Bonjour !
Je vais essayer d'être claire sur mon problème !
J'ai développé un petit programme java qui est chargé de lancer une commande shell de la manière suivante :
le code ici, c'est pour montrer comment j'écris mon fichier .sh.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 String command = "./commande.sh"; File file = new File("commande.sh"); try { FileOutputStream outputStream = new FileOutputStream(file); OutputStreamWriter writer = new OutputStreamWriter(outputStream,"ISO8859_15_FDIS"); writer.write(commande); writer.write(parametre); writer.write("\n"); writer.close(); } catch (IOException e) { System.out.println("le fichier de commande n'est pas crée "+e); }
Mon problème : dans ma chaîne "parametre" qui est récupérée d'un mail qui arrive dans le programme en entrée standard (grâce à un .forward contenant un pipe), j'ai à l'origine, des caractères accentués.
Or, lorsque j'écris ma commande, ceux-ci se transforment en "?" , et visiblement aussi quand ils rentrent dans le programme.
Ma question : comment faire, et à quel moment encoder ces caractères pour que je puisse récupérer les accents ???
Pour info : System.getProperty("file.encoding") me donne ISO8859-1
Merci beaucoup pour votre aide !!!
Posez moi des questions si j'ai été trop floue !!
Partager