public class BufferedIOStream {
//读
public static void input(String fileName){
StringBuffer sb=new StringBuffer();
Reader in=null;
BufferedReader br=null;
try {
in=new FileReader(fileName);
br=new BufferedReader(in);
String s=null;
while((s=br.readLine())!=null){
//br.readline即为s的返回值是String类型,即为读出这一行的数据的字符串格式。
//若读出为空即为=null
sb.append(s+"\n");
}
System.out.println(sb.toString());
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
if(br!=null){
br.close();
}
if(in!=null){
in.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//写
public static void ouput(String fileName, String s){
Writer fw=null;
BufferedWriter bw=null;
try {
fw=new FileWriter(fileName);//字符输出流
bw=new BufferedWriter(bw);//将字符输出流包成一个高效输出流
bw.write(s);//将字符串写入
bw.newLine();//换行
bw.write(s);
bw.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
if(bw!=null){
bw.close();
}
if(fw!=null){
fw.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//边读边写
public static void iOput(String sFileName,String dFileName){
FileInputStream fis=null;
FileOutputStream fos=null;
BufferedInputStream bis=null;
BufferedOutputStream bos=null;
byte[] buffer=new byte[1024];
try {
fis=new FileInputStream(sFileName);//字节输入流
fos=new FileOutputStream(dFileName);//字节输出流
bis=new BufferedInputStream(fis);//将字节输入流包成高效输入流
bos=new BufferedOutputStream(fos);//将字节输出流包成高效输出流
int len=-1;
while((len=bis.read(buffer, 0, buffer.length))!=-1){
//bis.read(byte[] b,int off,int len)的返回值是int类型
//此处len即为每次读取到的字符个数,当读取为空是是-1
//三个参数分别是:缓存数组 开始位置 每次存到缓存数组的长度
//**************************************************
//参数列表(char数组,开始的下标,写入的长度)
bos.write(buffer, 0, len);
bos.flush();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
if(bos!=null){
bos.close();
}
if(fos!=null){
fos.close();
}
if(bis!=null){
bis.close();
}
if(fis!=null){
fis.close();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
BufferedInputStream与BufferedoutputStream
最新推荐文章于 2023-01-17 23:34:57 发布