Java 如何将文本文件分为两部分?
我正在读取一个文本文件,以便使用Java 如何将文本文件分为两部分?,java,Java,我正在读取一个文本文件,以便使用扫描仪解析数据。该模式不是唯一的,而且它会重复,因此很难解析。我想将文本文件拆分为与原始文件位于同一位置的第二部分。第二个文件应该从特定字符串开始。有了这个,我可以在使用扫描仪时指向不同的文件 filePath = Paths.get(fileLocation); Scanner scan = new Scanner(filePath); 文本文件内容如下所示 Initial data xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx
扫描仪
解析数据。该模式不是唯一的,而且它会重复,因此很难解析。我想将文本文件拆分为与原始文件位于同一位置的第二部分。第二个文件应该从特定字符串开始。有了这个,我可以在使用扫描仪时指向不同的文件
filePath = Paths.get(fileLocation);
Scanner scan = new Scanner(filePath);
文本文件内容如下所示
Initial data xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxx Inputs xxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxx Outputs xxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
我想将从输出开始的数据放入第二个文本文件没有足够的上下文帮助。请使用演示问题的示例输入、不起作用的代码以及预期输出的示例更新问题。@AndrewS我没有拆分文件的代码。我仍在使用BufferedReader处理它。模式不是唯一的吗?是否有多个初始数据和/或输入、输出?@zlakad数据在输入和输出中重复,如名称、编号和地址。
//br is the bufferedreader
String line=null;
boolean outputflag=false;
while((line=br.readLine())!=null){
if(line.contains("Outputs")) {
outputflag=true;
//if you do not want the word Outputs in the output file just add 7 to start index
line=line.substring(line.indexOf("Outputs"),line.length());
//write line to outputs file
}
if(outputflag) {
//write line to ouputfile
}
}