Java convertion ISO -> UTF lors d'un parse

Fleming57 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Fleming57 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

je dois réalisé un prototype, pour la Bibliothèque Nationale de France, d'un convertisseur. Ce dernier doit convertir les livres numérisés de la BNF (XML à la norme ALTO) en Epub (format choisit pour l'Ipad).

Pour cela, j'utilise SAX pour parser mon fichier XML, et récolter les informations nécessaires, que je transforme en XHTML (composante de l'Epub). Jusque là, tout va bien. Lors des tests, c'est l'horreur. Aucun accent, aucun caractère spécial ne passe. Cela vient du fait que les fichiers XML sont en ISO-8859-1, et que moi je fais mon fichier XHTML en UTF-8. On m'impose cela, donc je dois trouver un moyen de convertir.

Je voudrais apporter à mon programme d'origine des modifictations assez minimim pour pas que je m'y perde, avec les solutions que j'ai trouvé, mais j'ai vraiment du mal...

Voici mon code d'origine :


FileInputStream fis = new FileInputStream(altoFile);
BufferedInputStream bufferedStream = new BufferedInputStream(fis, 10 * 1024);
InputStreamReader is;
if (useGzippedStream){
	is = new GZIPInputStream(bufferedStream);
}else{
	is = bufferedStream;
}
try {
	if (_typeDoc == "TDM")
	{
		TeiParserTDM parser = new TeiParserTDM(is);
		parser.parse();
	
	Etc...


Et voici une des solutions que j'ai trouvé, mais que je n'arrive pas à incorporer :

class LireEcrireTexte {


public static void main(String[] argv) throws IOException {

File lecteur;
File ecrivain;
lecteur = new File(argv[0]); // tu rentres ici ton script vb
ecrivain = new File("fichierUnicode.txt");
int c;
InputStreamReader ist = new InputStreamReader(new FileInputStream(lecteur) , "ISO-8859-1");
OutputStreamWriter ost = new OutputStreamWriter(new FileOutputStream(ecrivain) , "UTF-8");

while((c = ist.read()) != -1)
ost.write(c);


}
} 


Help me please =)

A voir également:

1 réponse

Fleming57 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Personne ?? :/
-1