java中io流的使用例子

import java.io.bufferedreader 
 import java.io.bufferedwriter 
 import java.io.bytearrayinputstream 
 import java.io.bytearrayoutputstream 
 import java.io.datainputstream 
 import java.io.dataoutputstream 
 import java.io.file 
 import java.io.fileinputstream 
 import java.io.filenotfoundexception 
 import java.io.fileoutputstream 
 import java.io.filereader 
 import java.io.filewriter 
 import java.io.ioexception 
 import java.io.inputstream 
 import java.io.inputstreamreader 
 import java.io.linenumberreader 
 import java.io.objectinputstream 
 import java.io.objectoutputstream 
 import java.io.outputstream 
 import java.io.outputstreamwriter 
 import java.io.printstream 
 import java.io.printwriter 
 import java.io.randomaccessfile 
 import java.io.serializable 
 import java.io.stringreader 
 import java.io.stringwriter 
 import java.nio.bytebuffer 
 import java.nio.channels.filechannel 

 class person implements serializable{
  int age 
  string name 
  transient string  password 
  public person(int age  string name  string password) {
   super() 
   this.age = age 
   this.name = name 
   this.password = password 
  }
 }

 public class testinputstream {

 
  public static void input (){
   try {
    fileinputstream fis=new fileinputstream(" d://1//1.txt" ) 
    int i=0 
    /while((i=fis.read())!=-1)
    {
     system.out.print((char)i) 
    }/
    
    byte[] bt=new byte[130] 
    fis.read(bt) 
    system.out.println(new string(bt " gbk" ).trim()) 
    fis.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void output (){
   try {
    fileoutputstream fis=new fileoutputstream(" d://1//2.txt" ) 
    fis.write(" 我爱大连理工" .getbytes()) 
    fis.flush() 
    fis.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  public static void filereadertest (){
   try {
    filereader fr=new filereader(" d://1//1.txt" ) 
    int c 
    /while((c=fr.read())!=-1)
    {
     system.out.print((char)c) 
    }/
    char[] ch=new char[100] 
    fr.read(ch) 
    system.out.println(new string(ch).trim()) 
    fr.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void filewritertest (){
   try {
    filewriter fw=new filewriter(" d://1//2.txt" ) 
    fw.write(" 我爱大连理工大uxe" ) 
    fw.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void bufferedreadertest ( ){
   try {
    bufferedreader br=new bufferedreader(new filereader(" d://1//1.txt" )) 
    string str=" "  
    while((str=br.readline())!=null)
    {
     system.out.println(str) 
    }
    br.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void bufferedwritertest (){
   try {
    bufferedwriter br=new bufferedwriter(new filewriter(" d://1//2.txt" )) 
    br.write(" 我爱大连理工大uxec" ) 
    br.write(123) 
    br.write(" 大量咯规范化" .tochararray()) 
    br.flush() 
    br.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void inputstreamreader (){
   try {
    inputstreamreader isr=new inputstreamreader(new fileinputstream(" d://1//1.txt" )) 
    int i=0 
    /while((i=isr.read())!=-1)
    {
     system.out.print((char)i) 
    }/
    
    char[] ch=new char[40] 
    isr.read(ch) 
    system.out.println(ch) 
    isr.close() 
    
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void outputstreamwriter (){
   try {
    outputstreamwriter isw=new outputstreamwriter(new fileoutputstream(" d://1//2.txt" )) 
    isw.write(" 使得法国就回家后即可大富豪国家会计科" ) 
    isw.write(" safhghgj" .tochararray()) 
    isw.flush() 
    isw.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void dataoutputstreamtest (){
   try {
    dataoutputstream dos=new dataoutputstream(new fileoutputstream(" d://1//1.txt" )) 
    dos.writeutf(" 我爱大连理工大uxe" ) 
    dos.writedouble(12345) 
    dos.flush() 
    dos.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void datainputstreamtest (){
   try {
    datainputstream dis=new datainputstream(new fileinputstream(" d://1//1.txt" )) 
    string str=dis.readutf() 
    double d=dis.readdouble() 
    system.out.println(str) 
    system.out.println(" double" +d) 
    dis.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void bytearraystream (){
   byte[] bt=" 大连理工大学" .getbytes() 
   bytearrayoutputstream bos=new bytearrayoutputstream() 
   dataoutputstream dos=new dataoutputstream(bos) 
   try {
    dos.writeutf(" 大连理工度邪恶" ) 
    dos.writelong(23145l) 
    dos.flush() 
    dos.close() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
   //如下读取会生成错误
   /byte[] b=bos.tobytearray() 
   try {
    system.out.println(new string(b " gbk" )) 
   } catch (unsupportedencodingexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }/
   bytearrayinputstream bis=new bytearrayinputstream(bos.tobytearray()) 
   datainputstream dis=new datainputstream(bis) 
   try {
    string str=dis.readutf() 
    long l=dis.readlong() 
    system.out.println(str) 
    system.out.println(l) 
    dis.close() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void objectoutputstreamtest (){
   try {
    objectoutputstream oos=new objectoutputstream(new fileoutputstream(" d://1//2.txt" )) 
    person p=new person(4 " we"  " ertr" ) 
    oos.writeobject(p) 
    person p1=new person(34 " dfhghgfhgfhj"  " fhgkjhlkjp lk lk ' " ) 
    oos.writeobject(p1) 
    oos.flush() 
    oos.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void objectinputstreamtest (){
   try {
    objectinputstream ois=new objectinputstream(new fileinputstream(" d://1//2.txt" )) 
    person p=(person)ois.readobject() 
    person p2=(person)ois.readobject() 
    string str1=p.name 
    string str2=p2.name 
    /
      由于password设置为transient 就是不能序列化,不会被存储,也不能被读取
     /
    string pass1=p.password 
    string pass2=p2.password 
    system.out.println(" 用户1:" +str1+" 密码" +pass1) 
    system.out.println(" 用户2:" +str2+" 密码" +pass2) 
    ois.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (classnotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }

  public static void systeminputstreamreader (){
   //使用fileinputstream不行
   inputstreamreader fis=new inputstreamreader(system.in) 
   int i=0 
   try {
   / while((i=fis.read())!=-1)
    {
     system.out.print((char)i) 
    }/
    char[] ch=new char[35] 
    //显示多余数据
    fis.read(ch) 
    system.out.print(ch) 
    fis.close() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void systeminputstream (){
   //使用fileinputstream不行
   inputstream is=system.in 
    byte[] bt=new byte[35] 
    try {
     is.read(bt) 
     system.out.println(new string(bt).trim()) 
     is.close() 
    } catch (ioexception e) {
     // todo auto-generated catch block
     e.printstacktrace() 
    }
  }
  
  public static void systemoutputstream (){
   //使用fileinputstream不行
   outputstream os=system.out 
    
    try {
     os.write(" 按时打发过来" .getbytes()) 
     os.close() 
    } catch (ioexception e) {
     // todo auto-generated catch block
     e.printstacktrace() 
    }
  }
  
  public static void testshurushuchuzhuanghuan (){
   try {
    printstream console=system.out 
    fileinputstream fis=new fileinputstream(" d://1//1.txt" ) 
    system.setin(fis) 
    fileoutputstream fos=new fileoutputstream(" d://1//2.txt" ) 
    printstream ps=new printstream(fos) 
    system.setout(ps) 
    system.seterr(ps) 
    bufferedreader br=new bufferedreader(new inputstreamreader(system.in)) 
    string str=" "  
    while((str=br.readline())!=null)
    {
     system.out.println(str) 
    }
    system.setout(console) 
    br.close() 
    fis.close() 
    fos.flush() 
    fos.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void randomaccessfileouttest (){
   try {
    randomaccessfile raf=new randomaccessfile(new file(" d://1//1.txt" ) " rw" ) 
    try {
     raf.writeboolean(true) 
     raf.writedouble(234) 
    } catch (ioexception e) {
     // todo auto-generated catch block
     e.printstacktrace() 
    }
    raf.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void randomaccessfileintest (){
   try {
    randomaccessfile raf=new randomaccessfile(new file(" d://1//1.txt" ) " rw" ) 
    try {
     /
       boolean占一个字节 向前跳1个字节
      /
     raf.seek(1) 
     //boolean t=raf.readboolean() 
     double d=raf.readdouble() 
     system.out.println(" double" +d) 
    } catch (ioexception e) {
     // todo auto-generated catch block
     e.printstacktrace() 
    }
    raf.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void filechanelouttest (){
   try {
    filechannel fc=new fileoutputstream(" d://1//1.txt" ).getchannel() 
    fc.write(bytebuffer.wrap(" 大连理工大学李宁" .getbytes())) 
    fc.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void filechanelgbktest( ){
   try {
    filechannel fc=new fileoutputstream(" d://1//1.txt" ).getchannel() 
    fc.write(bytebuffer.wrap(" 大连理工大学李宁" .getbytes(" utf-16be" ))) 
    fc.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void filechanelintest (){
   bytebuffer bf=bytebuffer.allocate(40) 
   try {
    filechannel fc=new fileinputstream(" d://1//1.txt" ).getchannel() 
    fc.read(bf) 
    bf.flip() 
    /while(bf.hasremaining())
    {
     system.out.println((char)bf.get()) 
    }/
    /
      以下仅适用于英文
     /
    system.out.println(bf.ascharbuffer()) 
    //修改后
    //string encoding=system.getproperty(" file.encoding" ) 
    //system.out.println(charset.forname(encoding).decode(bf)) 
    /
      或者在输入时使用utf-16be
     /
    
    bf.clear() 
    fc.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  public static void linenumberreadertest (){
   try {
    linenumberreader lr=new linenumberreader(new filereader(" d://1//1.txt" )) 
    string str=" "  
    while((str=lr.readline())!=null)
    {
     system.out.println(lr.getlinenumber()+"      " +str) 
    }
    lr.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void printstreamtest (){
   try {
    /
      可以带file,也可以不带
     /
    //printstream ps=new printstream(new file(" d://1//1.txt" )) 
    printstream ps=new printstream(" d://1//1.txt" ) 
    printstream console=system.out 
    system.setout(ps) 
    system.out.println(" 大连理工大些下次的法规和价格和" ) 
    system.setout(console) 
    ps.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void printwritertest (){
   try {
    /
      printwriter()中可以是文件路径及文件名,也可以是file,也可以是outputstream对象
     /
    printwriter pw=new printwriter(" d://1//1.txt" ) 
    pw.println(" 大利埃法规和加快了立刻离开" ) 
    pw.write(" 是大方过后就看见" +" /n" ) 
    pw.write(34) 
    pw.close() 
   } catch (filenotfoundexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void stringreadertest (){
   /
     filereader不行
    /
   bufferedreader br=new bufferedreader(new stringreader(" 发的规范及会计幅度高于韩国进口" )) 
   try {
    system.out.println(br.readline()) 
    br.close() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  
  public static void stringwritertest (){
   /
     filereader不行
    /
   bufferedwriter br=new bufferedwriter(new stringwriter(123)) 
   try {
    br.write(" 按时大法官采购机构客户及客户即可" ) 
    br.close() 
   } catch (ioexception e) {
    // todo auto-generated catch block
    e.printstacktrace() 
   }
  }
  public static void main(string[] args) {
   //input() 
   //output() 
   //filereadertest() 
   //filewritertest() 
   //bufferedreadertest() 
   //bufferedwritertest() 
   //inputstreamreader() 
   //outputstreamwriter() 
   //dataoutputstreamtest() 
   //datainputstreamtest() 
   //bytearraystream() 
   //objectoutputstreamtest() 
   //objectinputstreamtest() 
   //systeminputstreamreader() 
   //systeminputstream() 
   //systemoutputstream() 
   //testshurushuchuzhuanghuan() 
   //randomaccessfileouttest() 
   //randomaccessfileintest() 
     //filechanelouttest() 
   //filechanelgbktest() 
   //filechanelintest() 
   //linenumberreadertest() 
   //printstreamtest() 
   //printwritertest() 
   //stringreadertest() 
   //stringwritertest() 
  }
 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值