[英]extract a part of txt file from String name to an empty line
I want to extract a part of a text file beginning with a String name and ending with an empty line 我想提取文本文件的一部分,以字符串名称开头,以空行结尾
Here is what I tried: 这是我尝试过的:
public File CreateSubscripberFile(File file,String name) throws IOException
{
FileWriter fw = new FileWriter(f);
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
String line;
while((line = br.readLine()) != null){
if(line.equals(name))
{
while (((line = br.readLine()) != null) && (!(line.equals("\n"))))
{
fw.write(line);
System.out.println(line);
}
}
}
br.close();
fr.close();
fw.close();
return f;
}
but I get the original file as result! 但是我得到了原始文件!
Try to replace: 尝试更换:
(line = br.readLine())!=null)
with: 与:
(!(line = br.readLine()).equals(""))
null in this example would mean 'there is not more lines', and .equals(""), looks for empty line. 在此示例中,null表示“没有更多的行”,而.equals(“”)查找空行。
it's done by edit he code like this 这是通过编辑他的代码来完成的
public File CreateSubscripberFile(File file,String name,String fname) throws IOException
{
File f= new File(fname);
FileWriter fw = new FileWriter(f);
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
while((line = br.readLine()) != null){
if(line.equals(name))
{
String line1 = br.readLine() ;
while(line1 != null && !line1.isEmpty() )
{
System.out.println(line1);
line1=br.readLine();
}
}
}
br.close();
fw.close();
return f;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.