文件字节流FileInputStream是读文件内容
有一下五个方法
1) abstract int read( );
2) int read( byte b[ ] );
3) int read( byte b[ ], int off, int len );
4) int available( );
5) close( );
package com.bjsxt.ioproject;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class TestInputStream {
public static void main(String[] args) throws IOException {
//1.数据源与应用程序之间搭建管道
FileInputStream fStream=new FileInputStream(new File("F:\\***\\资料\\a.txt"));
//2.从数据源开始向程序中读数据
int count =fStream.available();
System.out.println(count);
//一次读一个字节
// System.out.println( fStream.read());//读取一个字节
// System.out.println(fStream.available());//还有25个字节等待读取
int buf=0;
int count1=0;
while ((buf=fStream.read())!=-1) {
count1++;
System.out.print((char)buf);
}
System.out.println("\n"+count1);
fStream.close();
}
}
使用 FileOutputStream
1) abstract void write( int b );
2) void write( byte b[ ] );
3) void write( byte b[ ], int off, int len );
4) void flush( );
5) void close( );
package com.bjsxt.ioproject;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class TestOutputStream {
public static void main(String[] args) {
FileOutputStream fOutputStream=null;
try {
fOutputStream = new FileOutputStream(new File("F:\\***\\资料\\a.txt"),true);
byte [] b ="qwerwasd".getBytes();
fOutputStream.write(b);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
if (fOutputStream!=null) {
fOutputStream.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行前:
运行后:
补充说明:
fOutputStream = new FileOutputStream(new File("F:\\***\\资料\\a.txt"),true);
true表示是在文件原有的内容之上增加内容。如果不写,则是替换原有内容。覆盖内容。