基于java文本复制的7种方式总结

2025-05-27 0 73

如下所示:

?

1

2

3

4

5

6

7

8

9

10

11

12

13
package copy;

import java.io.BufferedInputStream;

import java.io.BufferedOutputStream;

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

public class FileCopy {

public static void main(String[] args) throws IOException {

?

1

2

3

4

5

6

7

8

9
// 第一种: 使用FileReader和FileWrite,一次读取一个字符

FileReader fr = new FileReader("D:\\\\a.txt");

FileWriter fw = new FileWriter("D:\\\\b.txt");

int ch;

while((ch = fr.read()) != -1) {

fw.write(ch);

}

fw.close();

fr.close();

?

1

2

3

4

5

6

7

8

9

10
// 第二种: 使用FileReader和FileWrite,一次读取一个字符数组

FileReader fr = new FileReader("D:\\\\a.txt");

FileWriter fw = new FileWriter("D:\\\\b.txt");

char[] chs = new char[1024];

int len;

while((len = fr.read(chs)) != -1) {

fw.write(chs, 0, len);

}

fw.close();

fr.close();

?

1

2

3

4

5

6

7

8

9
// 第三种: 使用FileOutputStream和FileInputStream,一次读取一个字节

FileInputStream fis = new FileInputStream("D:\\\\a.txt");

FileOutputStream fos = new FileOutputStream("D:\\\\b.txt");

int ch;

while((ch = fis.read()) != -1) {

fos.write(ch);

}

fos.close();

fis.close();

?

1

2

3

4

5

6

7

8

9

10
// 第四种: 使用FileOutputStream和FileInputStream,一次读取一个字节数组

FileInputStream fis = new FileInputStream("D:\\\\a.txt");

FileOutputStream fos = new FileOutputStream("D:\\\\b.txt");

int ch;

byte[] by = new byte[1024];

while((ch = fis.read(by)) != -1) {

fos.write(by, 0, ch);

}

fos.close();

fis.close();

?

1

2

3

4

5

6

7

8

9

10

11
// 第五种: 使用BufferedReader和BufferedWriter,一次读取一行

BufferedReader br = new BufferedReader(new FileReader("D:\\\\a.txt"));

BufferedWriter bw = new BufferedWriter(new FileWriter("D:\\\\b.txt"));

String line;

while((line = br.readLine()) != null) {

bw.write(line);

bw.newLine();

bw.flush();

}

bw.close();

br.close();

?

1

2

3

4

5

6

7

8

9
// 第六种: 使用高效缓冲流,BufferedInputStream和BufferedOutputStream,一次读取一个字节

BufferedInputStream bis = new BufferedInputStream(new FileInputStream("D:\\\\a.txt"));

BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("D:\\\\b.txt"));

int ch;

while((ch = bis.read()) != -1) {

bos.write(ch);

}

bos.close();

bis.close();

?

1

2

3

4

5

6

7

8

9

10
// 第七种: 使用高效缓冲流,BufferedInputStream和BufferedOutputStream,一次读取一个字节数组

BufferedInputStream bis = new BufferedInputStream(new FileInputStream("D:\\\\a.txt"));

BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("D:\\\\b.txt"));

int ch;

byte[] by = new byte[1024];

while((ch = bis.read(by)) != -1) {

bos.write(by, 0, ch);

}

bos.close();

bis.close();

?

1

2
}

}

以上这篇基于java文本复制的7种方式总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持快网idc。

原文链接:http://blog.csdn.net/qq_26106607/article/details/79123496

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 基于java文本复制的7种方式总结 https://www.kuaiidc.com/76250.html

相关文章

发表评论
暂无评论