Записать строку Tokenized в текстовый файл?
Я пытаюсь сохранить токенизированную строку в файл.txt... Например, в Read.txt
является:
She sells, sea shells, by the sea shore.
У меня есть программа для токенизации, но я не могу сохранить строку токена в Write.txt
В Write.txt
Я просто получаю:
She sells, sea shells, by the sea shore.
В основном я хочу сохранить то, что я выводил в Write.txt
Любая помощь будет оценена:D
Вот мои выводы:
She sells, sea shells, by the sea shore.
[Split by spaces.]
She
sells,
sea shells,
by
the
sea
shore.
-----------------------------
[Split by commas.]
She sells
sea shells
by the sea shore.
И мои текущие коды:
import java.io.*;
import java.util.StringTokenizer;
public class readWriteTokenized{
public static void main( String[] args ){
String readString;
try{
BufferedReader br = new BufferedReader( new FileReader("Read.txt"));
readString = br.readLine();
System.out.println("\n" + readString);
br.close();
StringTokenizer stnz = new StringTokenizer(readString);
System.out.println("\n[Split by spaces.]\n");
while( stnz .hasMoreTokens()){
System.out.println(stnz .nextToken());
}
StringTokenizer stnz2 = new StringTokenizer(readString, ".");
System.out.println("\n-----------------------------");
System.out.println("\n\n[Split by comma.]\n");
while( stnz2.hasMoreTokens()){
System.out.print(stnz2.nextToken());
}
File NewTextFile = new File("C:/TestJava/Write.txt");
FileWriter fw = new FileWriter(NewTextFile);
fw.write(readString);
fw.close();
}
catch (IOException e){
System.out.println("Catch error!");
}
}
}
1 ответ
Решение
Вам нужно write()
добавьте к каждому токену System.getProperty("line.separator")
, Пример кода будет:
while( stnz2.hasMoreTokens()){
fw.write(stnz2.nextToken()+System.getProperty("line.separator"));
}
Или вы можете украсить свой FileWriter с помощью PrintWriter и использовать его метод println() для форматирования.