考虑文本文件的内容如下:
java是一种编程语言和平台.Java是一个高级别的, 强大,安全和面向对象的编程语言。
平台:程序中的任何硬件或软件环境 运行,被称为平台。由于Java有自己的运行时 环境(JRE)和API,它被称为平台。
Java历史很有趣。 java的历史始于 绿队。 Java团队成员(也称为绿色团队)发起了一个 为数字设备开发语言的革命性任务 机顶盒,电视机等。
现在你可以看到有三个paragph。我想将这三个段落存储在3个不同的txt文件中。
答案 0 :(得分:1)
首先,您需要使用FileReader
阅读该文件并将其存储为String
。然后,您可以使用String.split("\n\n")
将其拆分为段落(这将为您提供包含3个元素的数组)。
然后,您可以遍历每个数组元素,为每个数组元素创建PrintWriter
(将每个数组元素写入单独的文件。)
答案 1 :(得分:0)
请尝试以下代码:
public void readFileParagraphs(String fileName) throws IOException {
BufferedReader br = new BufferedReader(new FileReader(fileName));
try {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while (line != null) {
sb.append(line);
sb.append("\n");
line = br.readLine();
}
// Split the content of the file into an array of paragraphs
String parags[]= sb.toString().split("\n\n");
//Write every paragraph to a new file
for (int i=0; i<parags.length();i++) {
File file = new File("Paragraph_"+i+".txt");
FileWriter writer = new FileWriter(file, true);
PrintWriter output = new PrintWriter(writer);
output.print(parags[i]);
output.close();
}
} finally {
br.close();
}
}
你必须:
读取第一个文件文本并将其存储在String中。
使用新行正则表达式将其拆分以获取段落。
最后将拆分的每个结果(段落)保存到新文件中。