基于java文本复制的7种方式总结
如下所示:
packagecopy;
importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importjava.io.BufferedReader;
importjava.io.BufferedWriter;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.FileReader;
importjava.io.FileWriter;
importjava.io.IOException;
publicclassFileCopy{
publicstaticvoidmain(String[]args)throwsIOException{
//第一种:使用FileReader和FileWrite,一次读取一个字符
FileReaderfr=newFileReader("D:\\a.txt");
FileWriterfw=newFileWriter("D:\\b.txt");
intch;
while((ch=fr.read())!=-1){
fw.write(ch);
}
fw.close();
fr.close();
//第二种:使用FileReader和FileWrite,一次读取一个字符数组
FileReaderfr=newFileReader("D:\\a.txt");
FileWriterfw=newFileWriter("D:\\b.txt");
char[]chs=newchar[1024];
intlen;
while((len=fr.read(chs))!=-1){
fw.write(chs,0,len);
}
fw.close();
fr.close();
//第三种:使用FileOutputStream和FileInputStream,一次读取一个字节
FileInputStreamfis=newFileInputStream("D:\\a.txt");
FileOutputStreamfos=newFileOutputStream("D:\\b.txt");
intch;
while((ch=fis.read())!=-1){
fos.write(ch);
}
fos.close();
fis.close();
//第四种:使用FileOutputStream和FileInputStream,一次读取一个字节数组
FileInputStreamfis=newFileInputStream("D:\\a.txt");
FileOutputStreamfos=newFileOutputStream("D:\\b.txt");
intch;
byte[]by=newbyte[1024];
while((ch=fis.read(by))!=-1){
fos.write(by,0,ch);
}
fos.close();
fis.close();
//第五种:使用BufferedReader和BufferedWriter,一次读取一行
BufferedReaderbr=newBufferedReader(newFileReader("D:\\a.txt"));
BufferedWriterbw=newBufferedWriter(newFileWriter("D:\\b.txt"));
Stringline;
while((line=br.readLine())!=null){
bw.write(line);
bw.newLine();
bw.flush();
}
bw.close();
br.close();
//第六种:使用高效缓冲流,BufferedInputStream和BufferedOutputStream,一次读取一个字节
BufferedInputStreambis=newBufferedInputStream(newFileInputStream("D:\\a.txt"));
BufferedOutputStreambos=newBufferedOutputStream(newFileOutputStream("D:\\b.txt"));
intch;
while((ch=bis.read())!=-1){
bos.write(ch);
}
bos.close();
bis.close();
//第七种:使用高效缓冲流,BufferedInputStream和BufferedOutputStream,一次读取一个字节数组
BufferedInputStreambis=newBufferedInputStream(newFileInputStream("D:\\a.txt"));
BufferedOutputStreambos=newBufferedOutputStream(newFileOutputStream("D:\\b.txt"));
intch;
byte[]by=newbyte[1024];
while((ch=bis.read(by))!=-1){
bos.write(by,0,ch);
}
bos.close();
bis.close();
} }
以上这篇基于java文本复制的7种方式总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。