我要在一个文本中复制另外几个文本中的内容但是在每次复制完一个文本的时候 总是不换行 要怎么处理?好像 \n\t 之类的不管事 newline好像也不管是 不知道怎么插入换行! //每行读取结束 换行
String newLine = br.readLine()+"\r" + "\n"; //每行我是在这里换行的 但是每个文本之间不知道怎么换
while (newLine != null){
//声明写入的文件的位置
File newfile = new File("test/testAll.txt");
//写入文件
FileWriter ifw = new FileWriter(newfile,true); //true 不覆盖原有的文件
ifw.write(newLine,0,newLine.length());
ifw.flush();
newLine = br.readLine();// 从文件中继续读取一行数据
ifw.close();
} //每个文本结束 换行
//写入文件 这里应该插入文本之间的换行!!!!
System.out.println("----------------------------换行-----------------------------");
FileWriter ifw = new FileWriter("test/testAll.txt",true); //true 不覆盖原有的文件
// ifw.newLine();
ifw.flush();
//关闭连接
br.close();
reader.close();
// ifw.close();
String newLine = br.readLine()+"\r" + "\n"; //每行我是在这里换行的 但是每个文本之间不知道怎么换
while (newLine != null){
//声明写入的文件的位置
File newfile = new File("test/testAll.txt");
//写入文件
FileWriter ifw = new FileWriter(newfile,true); //true 不覆盖原有的文件
ifw.write(newLine,0,newLine.length());
ifw.flush();
newLine = br.readLine();// 从文件中继续读取一行数据
ifw.close();
} //每个文本结束 换行
//写入文件 这里应该插入文本之间的换行!!!!
System.out.println("----------------------------换行-----------------------------");
FileWriter ifw = new FileWriter("test/testAll.txt",true); //true 不覆盖原有的文件
// ifw.newLine();
ifw.flush();
//关闭连接
br.close();
reader.close();
// ifw.close();
String newLine = br.readLine(); //每行我是在这里换行的 但是每个文本之间不知道怎么换
while (newLine != null){
//写入文件
bw.write(newLine);
bw.newLine();
bw.flush();
newLine = br.readLine();// 从文件中继续读取一行数据
}
bw.close();
br.close();
File newfile = new File("test/testAll.txt");
//写入文件
FileWriter ifw = new FileWriter(newfile,true); //true 不覆盖原有的文件
这个不要写在循环里。
降低效率,且浪费资源。bw.newLine(); 这个好用的。
import java.io.*;
import java.util.*;
public class B
{ public static void main(String[] args)throws IOException
{ FileReader k=new FileReader("B.java");
BufferedReader in=new BufferedReader(k);
String s=new String();
String s2=new String();
while((s=in.readLine())!=null)
{ s2+=s+"\n";}
String s3="----------------------------换行---------------------------------------";
s2+=s3+"\n";
in.close();
System.out.println(s2);
BufferedReader in2=new BufferedReader(new StringReader(s2));
PrintWriter out=new PrintWriter(new BufferedWriter(new FileWriter("IODemo.txt",true)));
int count=1;
while((s=in2.readLine())!=null)
out.println(s);
out.close();
}
}
这个不知道是不是你要的! 每运行一次就把 B.java 写到 IODemo.txt里面 这个能运行 也能换行!你试试!
但是要真正实现编辑器显示换行,并非一个\n,而要用\r\n说明一下,\r是回车,就是回到最前面,而\n是换到下一行,这样才能体现出在下一行的前面
不要用记事本看看。用别的,比如写字板,ultraEdit, editplus什么的,因为用记事本的话他不认unix的换行符,java里貌似输出的都是unix换行符,在记事本里是不认的,他只认dos换行符。