I/O输入输出-输入/ 输出流

1,   流是一组有序的数据序列,根据操作类型,可以分为输入流和输出流,实际上是程序与文件/数组/网络连接/数据库的关系,但要以程序为中心。

2,IO流分类

1)按流向分:输入流与输出流

2)按数据分:字节流:二进制,一切文件均可

字符流:文本文件,只处理纯文本

3,字符流与字节流(重点)

1),字节流:输入流:InputStream(字节输入流)

输出流:OutputStream(字节输出流)

2),字符流:输入流:Reader(字符输入流)

输出流:Writer(字符输出流)

4,操作

举例:搬家------------->读取文件

1)关联房子  ----------->建立与文件的联系---------------->创建file对象

2)选择搬家------------->选择对应流---------------------->文件输入流(InputSream,FileInputStream)/文件输出流(InputSream,FileInputStream)

3)搬家------------------>读取/写出

a) 卡车大小------->数组大小

b)运输------------->读取/写出

4)打发over--------------->释放资源

---------读取文件内容-------------

public static void test()//读取文件内容操作
    {
        File src = new File("e:/test/zjf.txt");
        InputStream is = null;
        try {
            is = new FileInputStream(src);//使用src对象创建is对象
            int len = 0;
            byte[] car =new byte[100];
            try {
                //String info = null;
                while(-1!=(len=is.read(car)))//当len=-1时表示已经读到文件末尾
                {//将字节流转变成字符流,然后读取字符流
                    String info = new String(car,0,len);
                    System.out.println(info);//读取文件内容
                }

            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            if(is!=null)//将数据读取完后需要释放资源
            {
                try {
                    is.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }
    }

-------------向文件中写入内容----------------------

public static void test1()
    {
        File dest = new File("e:/test/zjf.txt");
        OutputStream is = null;
        try {
            is = new FileOutputStream(dest,false);//true代表在文件中追加内容,false代表更新文件内容,不保留原有的
            String src = "hkafhgkshgkag";
            byte[] data = src.getBytes();
            try {
                is.write(data);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
时间: 2024-12-23 12:25:08

I/O输入输出-输入/ 输出流的相关文章

输入输出流

1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读写数据的标准方法.任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法. Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO. 流IO的好处是简单易用,缺点是效率较低.块IO效率很高,但编程比较

Java输入输出流

1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读写数据的标准方法.任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法. Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO. 流IO的好处是简单易用,缺点是效率较低.块IO效率很高,但编程比较

java输入输出流总结 转载

一.基本概念 1.1 什么是IO?     IO(Input/Output)是计算机输入/输出的接口.Java中I/O操作主要是指使用Java进行输入,输出操作.     Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.      任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法.Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO.    

C++ 输入输出流 总结

1.ostream & operator<<(int); 重载了<<符号,用于对int类型的输出.为什么要返回ostream的引用呢? 例如: cout<< "1122"  << "2345" <<endl; 那么当输出"1122"的时候,返回了cout,也就是:  cout<<"1122"返回为 cout,然后可以继续像cout<<&

【转载】Java输入输出流-IO

转自:http://blog.csdn.net/hguisu/article/details/7418161 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读写数据的标准方法.任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法. Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核

输入输出流(I/O)

一.流概述 流是一组有序的数据序列,根据操作的类型,可分为输入流和输出流两种.I/O流提供了―条通道程序,可以使用这条通道把源中的字节序列送到目的地,虽然I/O流经常与磁盘文件存取有关,但是程序的源和目的地也可以是键盘鼠标.内存或显示器窗口等. Java由数据流处理输入输出模式,程序从指向源的输入流中读取源中的数据.源可以是文件.网络.压缩包或者其他数据源. 输出流的指向是数据要到达的目的地,程序通过向输出流中写入数据把信息传递到目的地.输出流的目标可以是文件.网络.压缩包.控制台和其他数据输出

C++输入输出流的重载

C++的流插入运算符“<<”和流提取运算符“>>”是C++在类库中提供的,所有C++编译系统都在类库中提供输入流类istream和输出流类ostream.cin和cout分别是istream类和ostream类的对象.在类库提供的头文件中已经对“<<”和“>>”进行了重载,使之作为流插入运算符和流提取运算符,能用来输出和输入C++标准类型的数据.因此,凡是用“cout<<”和“cin>>”对标准类型数据进行输入输出的,都要用#incl

Java输入输出流的使用详细介绍

出处:http://www.jb51.net/article/36138.htm 1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读写数据的标准方法.任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法. Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核心库 java.nio中采用

Java 输入输出流

1.什么是IO Java中I/O操作主要是指使用Java进行输入,输出操作. Java所有的I/O机制都是基于数据流进行输入输出,这些数据流表示了字符或者字节数据的流动序列.Java的I/O流提供了读写数据的标准方法.任何Java中表示数据源的对象都会提供以数据流的方式读写它的数据的方法. Java.io是大多数面向数据流的输入/输出类的主要软件包.此外,Java也对块传输提供支持,在核心库 java.nio中采用的便是块IO. 流IO的好处是简单易用,缺点是效率较低.块IO效率很高,但编程比较