Java语言中IO的总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java语言中IO的总结相关的知识,希望对你有一定的参考价值。

一、输入与输出的概念

  是指程序与外部设备或其他计算机进行交互的操作;

  Java把这些输入与输出操作用流来实现,通过统一的接口来表示,从而使程序设计更为简单;

  入还是出是相对于内存来说的;

  把数据读到内存中,称为输入,即input,进行数据的read操作;

  从内存往外部设备写数据,称为输出,即output,进行数据的write操作。

二、File类

  1、File类的概念

     File类是java.io包中很重要的一个类;

     File类的对象可以表示文件,还可以表示目录,在程序中一个File类对象可以代表一个文件或目录;

     File对象可以对文件或目录的属性进行操作,如:文件名、最后修改日期、文件大小等;

     File对象无法操作文件的具体数据,即不能直接对文件进行读/写操作。

  2、File的构造方法..

     File类的构造方法有4种重载方式,常用的如下:

技术分享

  如://在当前目录下创建一个与aaa.txt文件名相关联的文件对象

    File f1 = new File("aaa.txt");

    //指明详细的路径以及文件名,请注意双斜线或用反斜杠

     File f2 = new File("D:\\\\Java\\\\Hello.java");

     //指明详细的路径以及目录名,请注意双斜线

     File f3 = new File("D:\\\\Java");

三、输入流与输出流

  1、流按着数据的传输方向分为:

  -输入流:往内存中读叫输入流;

  -输出流:从内存中往外写叫输出流。

  2、所有输入流都是InputStream类或者Reader类的子类

  -类名以InputStream结尾的类都是InputStream的子类;

  -类名以Reader结尾的类都是Reader类的子类。

  3、所有输出流都是OutputStream类或者Writer类的子类

  -类名以OutputStream结尾的类都是OutputStream的子类;

  -类名以Writer结尾的类都是Writer类的子类。

四、字节流与字符流.

  1、从数据流编码格式上划分为

  -字节流

  -字符流

  2、InputStream和OutputStream的子类都是字节流

  -可以读写二进制文件,主要处理音频、图片、歌曲、字节流,处理单元为1个字节。

  3、Reader和Writer的子类都是字符流

  -主要处理字符或字符串,字符流处理单元为2个字节;

  -字节流将读取到的字节数据,去指定的编码表中获取对应文字。

  4、字节流中常用类

  -字节输入流 FileInputStream

  -字节输出流 FileOutputStream

  5、字符流中常用类

  -字符输入流 FileReader

  -字符输出流 FileWriter

五、字节流与字符流的转换

  1、转换流的由来

  -字符流与字节流之间的桥梁

  -方便了字符流与字节流之间的操作

  2、转换流的应用

  -字节流中的数据都是字符时,转成字符流操作更高效

  3、字节流转换成字符流的桥梁

    -InputStreamReader

    InputStreamReader(InputStream in)

    InputStreamReader(InputStream in, String charsetName)

    -OutputStreamWriter

    OutputStreamWriter(OutputStream out)

    OutputStreamWriter(OutputStream out, String charsetName)

     它读入字节,并根据指定的编码方式,将之转换为字符流。

      使用的编码方式可能由名称指定,或平台可接受的缺省编码方式。

六、scanner类

  Scanner类位于java.util包中,不在java.io包中,不属于IO流

  Scanner是一个工具类,主要目标是简化文本的扫描,最常使用此类获取控制台输入

  Scanner获取控制台输入的步骤

  1、使用控制台输入创建Scanner对象

  Scanner  scanner=new  Scanner(System.in);

  2、调用Scanner中的nextXXX方法,获得需要的数据类型

  例如:next、 nextLine、nextInt、nextByte等。

    

  

  

以上是关于Java语言中IO的总结的主要内容,如果未能解决你的问题,请参考以下文章

java中IO常见的IO流和file类理论总结

Java中IO流,输入输出流概述与总结

Java中IO流,输入输出流概述与总结

Java之IO流总结

Java32XML,JavaSE总结

Java语言中String累的总结