Partage
  • Partager sur Facebook
  • Partager sur Twitter

No such file

fichier existant avec bon chemin mais erreur : FileNotFoundException

    20 janvier 2022 à 20:14:17

    Bonjour,

    J'ai beau tourner le problème dans tous les sens et regarder les solutions sur internet et notamment ici sur openclassrooms je ne parvient pas à trouver une solution. Que j'utilise le chemin d'accès interne (src/main/res/CSV/test_mozart_tab_java.csv) ou le chemin externe (C://Users/anais/AndroidStudioProjects/MyApplication/app/src/main/res/CSV/test_mozart_tab_java.csv ) je me retrouve toujours avec l'erreur : FileNotFoundException. Alors que le lien externe est correcte vu qu'il s'ouvre quand je clique dessus dans la console (hyperlien). Voici ci après mon code :

    package com.example.myapplication;
    
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.ArrayList;
    
    
    /* transforme l'algo du fichier CSV en tab a 3D */
    class CSV_TO_JAVA {
        public static ArrayList<ArrayList<ArrayList<String>>> conversion() {
            String line;
            ArrayList<ArrayList<ArrayList<String>>> tab1 = new ArrayList<>();
            try {
                File doc = new File("C://Users/anais/AndroidStudioProjects/MyApplication/app/src/main/res/CSV/test_mozart_tab_java.csv");
                BufferedReader br = new BufferedReader(new FileReader(doc));
                int i = 0;
                ArrayList<ArrayList<String>> notes_lines = new ArrayList<>();
                while ((line = br.readLine()) != null) {
                    String[] values = line.split(",");
                    ArrayList<String> accord_anglo = new ArrayList<>();
                    if (i % 26 == 0) {
                        if (i > 0) {
                            tab1.add(notes_lines);
                            notes_lines = new ArrayList<>(0);
                        }
                        /*tab1.add(values[0]);*/
                    } else {
                        int j = 0;
                        /*System.out.println(values.length);*/
                        while (j < 9) {
                            if ((!values[j].equals("vide"))) {
                                /*System.out.println(values[j]);*/
                                accord_anglo.add(values[j]);
                            }
                            j++;
                            System.out.println(accord_anglo);
                        }
                        notes_lines.add(accord_anglo);
                        System.out.println(notes_lines);
                    }
                    i++;
                }
                tab1.add(notes_lines);
            } catch (IOException e) {
                e.printStackTrace();
            }
            System.out.println(tab1);
            return tab1;
        }
    
    }

    Quand je le fait dans un IDE java tout fonctionne mais pas dans android studio.

    /*...............*/
    String path = "test_mozart_tab_java.csv";
    String line;
    ArrayList<ArrayList<ArrayList<String>>> tab1 = new ArrayList<>();
         try {
              BufferedReader br = new BufferedReader(new FileReader(path)); 
    /* ...........*/

    Pouvez vous m'aider s'il vous plait ?

    Merci

    -
    Edité par AnaisBINET 20 janvier 2022 à 23:27:56

    • Partager sur Facebook
    • Partager sur Twitter
      21 janvier 2022 à 19:48:15

      Salut, t’as essayé un chemin relatif ?

      Si c’est dans les resources t’as pas un moyen d’y accéder avec R ?

      -
      Edité par EvaSahz 21 janvier 2022 à 19:49:15

      • Partager sur Facebook
      • Partager sur Twitter

      No such file

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown