java基础巩固之IO(三)

来源:互联网 发布:linux 文件夹删除 编辑:程序博客网 时间:2024/06/05 18:40

     基本上上两篇把IO主要的操作都涉及到了,这一篇作为收尾写一点零碎的东西吧。主要三个方面,一个是转换流,一个是标准输入输出流,再有就是编码方式。

    转换流:

   倘若文本文件用字节流来接受,可以再转换成字符流,通过字符流操作完再转换成字节流输出出去,这样进行编码和解码的过程称为转换。通过转换流实现。大致过程:

  1.    创建File
  2.   创建字节流
  3.   创建转换流
  4.   创建缓冲流
  5.   关闭缓冲流
  用一个输入流来演示吧:

public void  Trantest(){File f=null;FileInputStream fis=null;InputStreamReader isr=null;BufferedReader br=null; try {f=new File("kitty.txt"); fis=new FileInputStream(f); isr=new InputStreamReader(fis,"GBK"); br=new BufferedReader(isr); String s; while((s=br.readLine())!=null) { System.out.println(s); }} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} finally { if(br!=null) { try {br.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();} } } }
 这里转换流中用到编码方式,这里用一个图片主要显示当前常用的编码方式:

 

  其他不多提。

标准输入输出流:

   不知道该怎么说,就用一个小代码段来说明一下吧。该代码实现控制台的输入转换成大写。输入e终止程序。

  

public void testStrand(){InputStream in=System.in;InputStreamReader isr=null;BufferedReader br=null;try {isr=new InputStreamReader(in);br=new BufferedReader(isr);String s;while(true){System.out.println("please input something end with enter");s=br.readLine();if(s.equalsIgnoreCase("e")){break;}String ss=s.toUpperCase();System.out.println(ss);}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{if(br!=null){try {br.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}
 嗯,这里IO的部分基本上就是这样了。

0 0
原创粉丝点击