Java - Lecture d'un fichier csv ligne par ligne - coincé avec bizarre inexistante de lire les caractères!

salut amis développeurs java. Je vais avoir un très étrange question.

Je suis en train de lire un fichier csv ligne par ligne. Im sur le point où je suis en train de tester la lecture de ces lignes. Seulement à chaque fois que je lis une ligne, la ligne de contient des caractères carrés entre chaque caractère du texte. J'ai même enregistré le fichier comme un fichier txt dans wordpad et le bloc-notes avec pas de changement.

Donc je dois être en train de faire quelque chose de stupide...

J'ai un fichier csv, csv standard de fichiers, oui un fichier texte avec des virgules en elle. J'essaie de lire une ligne de texte, mais le texte est tout f-ed et ne peut pas trouver la phrase dans le texte.

Des conseils? le code ci-dessous.

    //open csv
  File filReadMe = new File(strRoot + "data2.csv");
  BufferedReader brReadMe = new BufferedReader
     (new InputStreamReader(new FileInputStream(filReadMe)));

  String strLine = brReadMe.readLine();
  //for all lines
  while (strLine != null){

   //if line contains "(see also"
   if (strLine.toLowerCase().contains("(see also")){
    //write line from "(see also" to ")"
    int iBegin = strLine.toLowerCase().indexOf("(see also");
    String strTemp = strLine.substring(iBegin);
    int iLittleEnd = strTemp.indexOf(")");
    System.out.println(strLine.substring(iBegin, iBegin + iLittleEnd));
   }

   //update line
   strLine = brReadMe.readLine();
  } //end for

  brReadMe.close();
  • ce que l'encodage des caractères est le fichier écrit dans? Vous utilisez InputStreamReader avec l'encodage, donc il va utiliser la valeur par défaut de la plateforme d'encodage, ce qui n'est pas toujours ce que vous voulez.
  • Elle a été faite sur un ordinateur windows, Im en utilisant un ordinateur windows...
InformationsquelleAutor rockit | 2010-05-20