Java之IO

原创 2016年06月22日 22:17:38

转载请标明出处: http://blog.csdn.net/wu_wxc/article/details/51737361
本文出自【吴孝城的CSDN博客】

根据处理的数据类型可分为:字节流、字符流
根据数据走向可分为:输入流、输出流

字节流:可以处理所有类型的数据,在读取时,读到一个字节就返回一个字节。
在Java中以对应的类以”Stream”结尾

字符流:仅能处理纯文本数据,如txt文本,它是在读取到一个或多个字节后,查找指定的编码表,然后将查找到的字符返回
在Java中对应的类以”Reader”或”Writer”结尾

输入流和输出流:
输入流用于从源读取数据,输出流用于向目标写数据

输入流

package cn.wuxiaocheng;

import java.io.FileInputStream;

public class Inout {

    public static void main(String[] args) {
        try {
            FileInputStream inputStream = new FileInputStream("test.txt");
            // 在UTF-8中,一个汉字3个字节,一个"."1个字节,一个数字1个字节,一个换行2个字节
            byte[] input = new byte[37];
            inputStream.read(input);
            String string = new String(input, "UTF-8");
            System.out.println(string);

        } catch (Exception e) {
        }

    }

}
**输出流**
package cn.wuxiaocheng;

import java.io.FileOutputStream;

public class Output {

    public static void main(String[] args) {
        try {
            FileOutputStream fileOut = new FileOutputStream("test.txt");
            String str = "输出的内容";
            byte[] out = str.getBytes("UTF-8");
            fileOut.write(out);

        } catch (Exception e) {
        }
    }
}

下面是一个读取键盘输入的内容,从控制台输出的程序

package cn.wuxiaocheng;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class In {

    public static void main(String[] args) throws IOException {
        String c = null;
        BufferedReader br = new BufferedReader(
                new InputStreamReader(System.in));

        System.out.println("输入文字回车输出");
        System.out.println("输入end结束");

        do {
            // 字符串用readLine(),如果是char类型的字符可用read()
            c = br.readLine();
            System.out.println(c);
        } while (!c.equals("end"));
    }

}
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wu_wxc/article/details/51737361
收藏助手
不良信息举报
您举报文章:Java之IO
举报原因:
原因补充:

(最多只允许输入30个字)