package test; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; public class IO输入流 { /* 建立文件联系 选择流 选择接受数组的大小 */ public static void main(String[] args) { // TODO Auto-generated method stub File src =new File("d:/test/a.txt");//建立联系file对象 InputStream is=null; //提升作用域 try { is=new FileInputStream(src);//选择流 byte[] car =new byte[10];//选择接受数组大小 int len =0; try { while(-1!=(len=is.read(car))){ //从输入流中读取一定数量的字节,并将其存储在缓冲区数组b中,返回字节的数量 //没有数据时返回-1 String info =new String(car,0,len); //通过使用平台的默认字符集解码指定的 byte 子数组,构造一个新的 String System.out.println(info); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("读取文件失败"); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("文件不存在"); }finally{ //释放资源 try { if(null != is){ is.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("关闭文件输入流"); } } } }
输入流
package test; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class IO输入流 { /* 建立文件联系 选择流 选择接受数组的大小 释放资源 */ public static void main(String[] args) { // TODO Auto-generated method stub File src =new File("d:/test/a.txt");//建立联系file对象(程序与输出文件) OutputStream os=null; //提升作用域 try { os=new FileOutputStream(src,true);//选择输出流 //操作 String str="io is very important";//要写出的文件 //字符串转字节数组 byte[] data=str.getBytes(); os.write(data, 0, data.length); //使用给定的 charset 将此 String 编码到 byte 序列,并将结果存储到新的 byte 数组。 os.flush(); //强制刷新出去 }catch (IOException e){ e.printStackTrace(); } finally{ //释放资源 try { if(null != os){ os.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); System.out.println("关闭文件输入流失败"); } } } }
输出流