1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import
java.io.*;
class
Test{
public
static
void
main(String args[]){
FileInputStream fis =
null
;
FileOutputStream fos =
null
;
try
{
fis =
new
FileInputStream(
"F:/Android/Java4Android/33/src/a.txt"
);
//假设每次读取1024字节,
byte
[] b =
new
byte
[
1024
];
fos =
new
FileOutputStream(
"F:/Android/Java4Android/33/src/b.txt"
);
//使用循环多次读取大文件的数据
while
(
true
){
int
bLen = fis.read(b,
0
,b.length);
//当程序已经读完了数据则返回-1
if
(bLen == -
1
){
break
;
}
fos.write(b,
0
,bLen);
}
}
catch
(Exception e){
System.out.println(e);
}
finally
{
try
{
//关闭IO流
fis.close();
fos.close();
}
catch
(Exception e){
System.out.println(e);
}
}
}
}
|
当文件的数据很大的时候,用字节流不可能一次性就读取完所有数据,可以分次循环读取再写入数据。字符流同理!
编程是门技能,熟能生巧,谢谢Mars老师!