Effectuer un retour à la ligne selon une chaine de caractères
Résolu
brino1987
-
brino1987 -
brino1987 -
Bonjour tout le monde,
j'ai un fichier texte et j'aimerai découper ses chaines de caractères et faire un retour à la ligne selon une chaîne de caractères c à d je fais mon parcours et je lis mon fichier caractère par caractère et si je trouve mon chaine souhaité je déplace mon curseur au début de cette chaine et je fais un retour à la ligne..
a plus par exemple mon fichier contient le texte suivant:
ggggdgfgfghjhgfdfghjkkjuiyggggffddddddfgggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgjggggkgjhkgjgkdfjfjdkjjdggggdhdsgdshgdshgdsh
mon fichier après traitement (je teste selon la chaine "gggg"):
ggggdgfgfghjhgfdfghjkkjuiy
ggggffddddddf
gggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgj
ggggkgjhkgjgkdfjfjdkjjd
ggggdhdsgdshgdshgdsh
svp j'ai besoin de vos lumières et merci d'avance
j'ai un fichier texte et j'aimerai découper ses chaines de caractères et faire un retour à la ligne selon une chaîne de caractères c à d je fais mon parcours et je lis mon fichier caractère par caractère et si je trouve mon chaine souhaité je déplace mon curseur au début de cette chaine et je fais un retour à la ligne..
a plus par exemple mon fichier contient le texte suivant:
ggggdgfgfghjhgfdfghjkkjuiyggggffddddddfgggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgjggggkgjhkgjgkdfjfjdkjjdggggdhdsgdshgdshgdsh
mon fichier après traitement (je teste selon la chaine "gggg"):
ggggdgfgfghjhgfdfghjkkjuiy
ggggffddddddf
gggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgj
ggggkgjhkgjgkdfjfjdkjjd
ggggdhdsgdshgdshgdsh
svp j'ai besoin de vos lumières et merci d'avance
A voir également:
- Retour à la ligne java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Retour à la ligne excel - Guide
- Partager photos en ligne - Guide
- Retour à la ligne google sheet ✓ - Forum Google Docs
merci pour votre aide,
j'ai essayé avec ce qui tu me donnes mais le problème est qu'avec cette méthode
le contenu de mon fichier est réécrit à la fin de fichier. c à d le contenu est devient comme ça:
ggggdgfgfghjhgfdfghjkkjuiy
ggggffddddddf
gggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgj
ggggkgjhkgjgkdfjfjdkjjd
ggggdhdsgdshgdshgdsh
ggggdgfgfghjhgfdfghjkkjuiyggggffddddddfgggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgjggggkgjhkgjgkdfjfjdkjjdggggdhdsgdshgdshgdsh
est ce que tu peut encore m'aider svp
Ça ressemble beaucoup au contenu que tu mettais en exemple hier non ?
Explique un peu mieux ce que tu veux faire, avec un exemple complet avant / après, parce que là ce n'est pas clair du tout...
j'ai les données dans un fichier sont de cette forme:
ggggdgfgfghjhgfdfghjkkjuiyggggffddddddfgggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgjggggkgjhkgjgkdfjfjdkjjdggggdhdsgdshgdshgdsh
je voudrai les rendre de cette forme:
ggggdgfgfghjhgfdfghjkkjuiy
ggggffddddddf
gggggskqfhdsmlfhdsghsfdghfjgfjgjghkfjghgkgjfkgj
ggggkgjhkgjgkdfjfjdkjjd
ggggdhdsgdshgdshgdsh
c à d je parcours mon fichier et si je trouves la chaine gggg je fais un retour à la ligne
clair ça ou nn??
et voilà mon code:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.sql.Date;
import java.text.SimpleDateFormat;
import java.util.StringTokenizer;
public class ReadFile{
public static void main(String[] args) throws IOException{
//Créer un nom de fichier basé sur la date et l'heure
//SimpleDateFormat filePattern = new SimpleDateFormat("ddMMyyyy_HHmm");
//String filename=filePattern.format(new Date(0)) + ".txt";
//ouvrir le fichier
File file=new File("C:\\eclipse\\Workspace\\AlertSnort.txt");
String filePath = "C:\\eclipse\\Workspace\\TotalAlert.txt";
if(file.exists()==true){
file.delete();
file.createNewFile();
}
try{
PrintStream printStream = new PrintStream(file);
System.setOut(printStream);
;
// Création du flux bufférisé sur un FileReader, immédiatement suivi par un
// try/finally, ce qui permet de ne fermer le flux QUE s'il le reader
// est correctement instancié (évite les NullPointerException)
BufferedReader buff = new BufferedReader(new FileReader(filePath));
StringBuffer ligne= new StringBuffer();
try {
String line;
int i=-1;
String car;
// Lecture du fichier ligne par ligne. Cette boucle se termine
// quand la méthode retourne la valeur null.
while ((line = buff.readLine()) != null&& i==-1) {
String str2 = line.replaceAll("gggg","\ngggg");
System.out.println(str2);
System.out.println(line);
//faites ici votre traitement
}
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
buff.close();
printStream.close();
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}