Maison >Java >javaDidacticiel >Comment lire correctement les fichiers texte sous Android et résoudre les exceptions courantes ?

Comment lire correctement les fichiers texte sous Android et résoudre les exceptions courantes ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-08 18:32:11902parcourir

How to Correctly Read Text Files in Android and Troubleshoot Common Exceptions?

Lire des fichiers texte dans Android : dépannage d'une exception lors de la lecture à partir de mani.txt

Vous rencontrez une exception lorsque vous tentez de lire un fichier texte nommé "mani.txt" dans votre application Android. Cette erreur se produit car le code recherche le fichier à un emplacement incorrect.

Pour réussir à lire un fichier texte sous Android, vous devez d'abord placer le fichier à un emplacement approprié dans le dossier de l'application. Le chemin que vous avez spécifié ("E:testsrccomtestmani.txt") n'est pas un chemin valide pour les applications Android.

L'approche recommandée pour lire des fichiers texte sous Android consiste à utiliser la classe InputStream pour ouvrir un flux vers le fichier. et lisez son contenu. Cependant, le chemin d'accès au fichier doit être correct pour que cette approche fonctionne.

Au lieu d'utiliser des chemins absolus codés en dur, vous devez utiliser la méthode openFileInput(String fileName) pour ouvrir un flux vers un fichier dans le dossier de candidature. Cette méthode prend le nom du fichier comme argument et ouvre le flux correspondant.

Voici un exemple de code amélioré qui lit le fichier "mani.txt" depuis le dossier de l'application :

try {
    InputStream instream = openFileInput("mani.txt"); // Opens a stream to the file "mani.txt"
    if (instream != null) {
        InputStreamReader inputreader = new InputStreamReader(instream); // Creates an InputStreamReader to read from the stream
        BufferedReader buffreader = new BufferedReader(inputreader); // Creates a BufferedReader to read the data
        String line, line1 = "";
        try {
            while ((line = buffreader.readLine()) != null) // Read each line
                line1 += line; // Append each line to the final string
        } catch (Exception e) {
            e.printStackTrace(); // Handle any exceptions that may occur
        }
    }
} catch (Exception e) {
    String error = e.getMessage(); // Handle the exception if the file could not be found or opened
}

Ceci le code suppose que le fichier "mani.txt" se trouve dans le dossier de l'application. Si vous devez lire un fichier à partir d'un emplacement différent, vous pouvez utiliser la méthode Environment.getExternalStorageDirectory() pour obtenir le chemin d'accès au répertoire de stockage externe.

Vous pouvez également utiliser la classe AssetManager pour lire des fichiers. à partir du dossier Assets de votre application. Cette méthode est plus adaptée si vous souhaitez inclure des fichiers dans votre package d'application et les lire au moment de l'exécution.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn