La lecture d'un fichier txt et outputing comme un TextView Android
Je suis en train de lire un fichier texte qui est déjà enregistré dans mon répertoire, et l'imprimer sur l'écran comme un TextView. C'est le code que j'ai jusqu'à présent. Cependant, lorsque je lance l'application, il crée un pain grillé qui dit "Erreur de Lecture du Fichier". Ce que je fais mal ici?
public class sub extends Activity {
private TextView text;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.text);
//text = (TextView) findViewById(R.id.summtext);
//File file = new File("inputNews.txt");
//StringBuilder text = new StringBuilder();
try {
InputStream in = openFileInput("inputNews.txt");
if(in != null){
InputStreamReader reader = new InputStreamReader(in);
BufferedReader br = new BufferedReader(reader);
StringBuilder text = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {
text.append(line);
text.append('\n');
}
in.close();
}
}
catch (IOException e) {
Toast.makeText(getApplicationContext(),"Error reading file!",Toast.LENGTH_LONG).show();
e.printStackTrace();
}
TextView output= (TextView) findViewById(R.id.summtext);
output.setText((CharSequence) text);
}
}
- Qu'est-ce que
inputNews.txt
corriger l'emplacement du répertoire? - Il est enregistré dans le dossier de développement
- Publier vos openFileInput() la méthode et le logcat montrant l'exception imprimé par printStackTrace().
- Quels sont vos moyens sur
development folder
? - J'ai édité ma question maintenant. C'est comment j'ai enregistré le fichier
- voir ma réponse ci-dessous.
Vous devez vous connecter pour publier un commentaire.
Si vous voulez garder un
.txt
fichier dans votre Projet, vous devez localiser dans laassets
dossier.Ensuite, vous pouvez y accéder avec AssetManger .
Lire cette sujet sur la façon de créer votre
assets
dossier, puis utilisez ce code:Comme je sais que vous ne pouvez pas lire le fichier à partir de dite
development folder
. Mais vous pouvez déplacer le fichier même dossier des actifs dansdevelopment folder
et lire à partir de là. ie.J'espère que cela aide
Vous devez stocker ces fichiers dans
assets
ouraw
répertoire.Et après que vous pouvez obtenir inputstream à partir de ces fichiers en utilisant ,
Si à l'aide d'actifs
OU si vous utilisez l'annuaire brut puis ,
C'est le Kotlin version de la réponse à partir de ci-dessus: