我想剪切并粘贴文本文件的段落到新的文件数

时间:2015-04-02 14:07:49

标签: java

考虑文本文件的内容如下:

  

java是一种编程语言和平台.Java是一个高级别的,   强大,安全和面向对象的编程语言。

     

平台:程序中的任何硬件或软件环境   运行,被称为平台。由于Java有自己的运行时   环境(JRE)和API,它被称为平台。

     

Java历史很有趣。 java的历史始于   绿队。 Java团队成员(也称为绿色团队)发起了一个   为数字设备开发语言的革命性任务   机顶盒,电视机等。

现在你可以看到有三个paragph。我想将这三个段落存储在3个不同的txt文件中。

2 个答案:

答案 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中。

  • 使用新行正则表达式将其拆分以获取段落。

  • 最后将拆分的每个结果(段落)保存到新文件中。