Conversion Charset File/InputStream
Bonjour à tous,
Après avoir religieusement regarder les FAQs je n'ai pu trouver de réponses à mes questions (si il y en a une !)
Mon problème est celui ci, j'ouvre un fichier et je le parcours pour en extraire son contenu et effectuer un traitement sur ce dernier.
Hélas je ne connais pas le format d'encodage de ces dits fichiers et je souhaiterais qu'il soient en UTF-8 (marre de me retrouver avec des gros carrés noir à la place de mes accents et autres caractères spéciaux).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| private static BufferedReader open(String pNomFichier) {
File tFile=null;
try {
tFile = new File(pNomFichier);
InputStreamReader tInputSR = new InputStreamReader(new FileInputStream(tFile));
if(Charset.isSupported(tInputSR.getEncoding())){
System.out.println("ça passe!!");
}
cBuffer = new BufferedReader(tInputSR);
tInputSR.close();
} catch (FileNotFoundException eFileNotFoundException) {
//(FileNotFoundException fileNotFoundException)
System.out
.println("Probleme de FileInputStream : FileNotFound");
cBuffer=null;
} catch (IOException eIOException) {
System.out.println("Erreur fermeture InputStreamReader");
} catch(NullPointerException eNullPointerException){
System.out
.println("NullPointer à la création du fichier, chemin sans doute incorrect");
cBuffer=null;
}
return cBuffer;
} |
J'arrive bien à récupérer l'encodage mais je ne vois pas comment le modifier une fois mon inputStream récupéré :/
Merci en avance de votre aide !