Bonjour,
J'essai de recopier un fichier dans un nouveau grace à un BufferedReader et un printWriter. Le problème c'est que mon fichier peut contenir des /, des " et donc cela bloque la lecture. Comment faire?
Bonjour,
J'essai de recopier un fichier dans un nouveau grace à un BufferedReader et un printWriter. Le problème c'est que mon fichier peut contenir des /, des " et donc cela bloque la lecture. Comment faire?
Laisser un message après le Bug!
Salut,
Je ne vois pas en quoi cela pourrait bloquer la lecture !!??!!Envoyé par bygui
Quel est l'exception que tu obtiens ? Quel est ton code ?
a++
Il n'y a pas d'erreur...
Mon application lit bien toute les lignes du fichier source mais il ne les recopie pas toutes et je ne sait pas pourquoi, il s'arrete d'ecrire au bout d'un moment. Au debu je pensé que c'était les caractères speciaux mais en fait non.
voila mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 File res=new File(fichierRes); res.createNewFile(); InputStream ips=new FileInputStream(fichierSrc); InputStreamReader ipsr=new InputStreamReader(ips); BufferedReader br=new BufferedReader(ipsr); stylo = new PrintWriter(new BufferedWriter (new FileWriter(fichierRes)); while ( (ligne = br.readLine()) != null) { System.out.println(ligne); stylo.println(ligne); }
Laisser un message après le Bug!
C'est un problème interessant As-tu essayé simplement avec BufferedWriter, ça t'obligeras simplement à faire newLine() en plus. Le PrintWriter devrait être inutile et je ne serait pas surpris que le problème vienne de là. Ou bien inversement, utilise PrintWriter sans BufferedWriter.
Le problème vient sûrement du fait que tu ne fermes pas les fluxs . Au passage, la classe PrintWriter possède un constructeur recevant directement un File en paramètre .
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
16
17
18
19
20
21
22 try { File res = new File(fichierRes); res.createNewFile(); BufferedReader br = new BufferedReader(new InputStreamReader( new FileInputStream(fichierSrc))); stylo = new PrintWriter(fichierRes); try { try { while ( (ligne = br.readLine()) != null) { System.out.println(ligne); stylo.println(ligne); } } finally { stylo.close(); } } finally { br.close(); } } catch(IOException ioe) { ioe.printStackTrace(); }
Je ne répondrai à aucune question technique par MP.
Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
Enfin, quand une solution a été trouvée à votre problème pensez au tag
Cours Dvp : http://ydisanto.developpez.com
Blog : http://yann-disanto.blogspot.com/
Page perso : http://yann-disanto.fr
mon printwriter était correct mais l'erreur venait bien de ma variable stylo.
J'ai changé le println en write et j'ai rajouté un stylo.flush() et sa marche.
Merci à tous
Laisser un message après le Bug!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager