Java之IO

Posted 「已注销」

tags:

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

转载请标明出处: 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"));
    

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

一脚踩进java之基础篇40——IO转换缓冲

基础知识之----------IO流

理解Java之IO流

java IO流

IO流之转换流

JAVA基础-IO流