处理流是I/O中非常重要的方式,顾名思义就是对输入输出流进行处理,起方式多种多样,不过本质是一样的。
下面就举几个字符输入处理流的例子:
(1):BufferedInputStream/BufferedOutputStream
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class BufferStreamTest {
public static void main(String[] args) {
int b = 0;
try {
BufferedInputStream bis = new BufferedInputStream(
new FileInputStream("D:\\快盘\\java\\src\\mashibinSE08\\BufferStreamTest.java"));
BufferedOutputStream bos = new BufferedOutputStream(
new FileOutputStream("C:\\Users\\Administrator\\Desktop\\test.txt"));
while((b = bis.read()) != -1){
System.out.print((char)b);
bos.write(b);
}
bis.close();
bos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("文件没找到");
System.exit(-1);
} catch (IOException e) {
e.printStackTrace();
System.out.println("文件读取错误");
System.exit(-1);
}
}
}
(2):BufferedReader/BufferedWriter
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class ReadLineTest {
public static void main(String[] args) {
String str = null;
try {
BufferedReader br = new BufferedReader(
new FileReader("D:\\快盘\\java\\src\\mashibinSE08\\ReadLineTest.java"));
BufferedWriter bw = new BufferedWriter(
new FileWriter("C:\\Users\\Administrator\\Desktop\\test.txt"));
while((str = br.readLine()) != null){
System.out.println(str);
bw.write(str);
}
br.close();
bw.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
System.out.println("文件没找到");
System.exit(-1);
} catch (IOException e) {
e.printStackTrace();
System.out.println("文件读取错误");
System.exit(-1);
}
}
}
(3):按行读取
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
//输入字符处理流
public class BufferReaderTest {
public static void main(String[] agrs){
FileReader fileReader = null;
//定义一个BufferedReader的引用
BufferedReader bufferedReader = null;
try {
fileReader = new FileReader("d:/input.txt");
bufferedReader = new BufferedReader(fileReader);
String line = null;
while(true){
//读取输入流的每一行数据
line =bufferedReader.readLine();
if(line == null){
break;
}
System.out.println(line);
}
} catch (FileNotFoundException e) {
System.out.println("文件未找到");
e.printStackTrace();
} catch (IOException e) {
System.out.println("发生IO异常");
}
}
}