I/O
I/O核心类核心方法
InputStream;
int read(byte[]b, int off, int len) (存储数组,偏移量,最多读取字节数)
OutputStream;
void write(byte[]b, int off, int len)
代码示例:
//声明输入流的引用
FileInputStream fis = null;
FileOutputStream fos = null;
try{
//生成代表输入流的对象
fis = new FileInputStream("文件位置");
fos = new FileOutputStream("文件位置");
//生成一个字节数组
byte [ ]buffer = new byte[100];
//调用输入流对象的read方法,读取数据
int temp = fis.read(buffer,0,buffer.length); //读入字节 ASCII
fos.write(buffer,0,temp);
String s = new String(buffer);
//调用String 对象的trim方法,将会去除掉这个字符串的首尾空格和空字符
s = s.trim();
System.out.println(s);
}
catch(Exception e){
System.out.println(e);
}
I/O大数据文本
代码示例:
byte[] buffer = new byte[1024];
while(true){
int temp = fis.read(buffer,0,buffer.length)
if(temp == -1){
break;
}
fos.write(buffer, 0, temp);
}
finally{
try{
fis.close();
fos.close();
}
catch(Exception e){
System.out.println(e);
}
}
字符流
字节输入流:Reader <– FileReader
int read(char[] c, int off, int len)
字节输出流:Writer <– FileWriter
void write(char[] c, int off, int len)
代码类似
I/O处理流
代码示例:
FileReader fileReader = null;
BufferedReader bufferedReader = null;
try{
fileReader = new FileReader("");
bufferedReader = new BufferedReader(fileReader);
String line = null;
while(true){
line = bufferedReader.readline();
if(line == null){
break;
}
System.out.println(line);
}
}
catch(){}
finally(){}
被装饰者:节点流
装饰者:处理流