Java_I/O流_总结_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java_I/O流_总结

Java_I/O流_总结

 2018/8/13 18:35:43  NOthingAj  程序员俱乐部  我要评论(0)
  • 摘要:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象一开始需要注意的就是,流所处理的参照中心始终是程序Java流类图结构:字节流和字符流所处理的问题有所区别,字节流是以8bits为单位处理问题,而在Java中,字符流处理的最基本的单元是Unicode码元,其大小为16bits。设备上的数据无论是图片或者视频,文字,它们都以二进制存储的。二进制的最终都是以一个8位为数据单元进行体现,所以计算机中的最小数据单元就是字节。意味着,字节流可以处理设备上的所有数据
  • 标签:总结 Java

流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象

?

一开始需要注意的就是,流所处理的参照中心始终是程序è??é??????????????è?°

?

?

?

Java流类图结构:

è??é??????????????è?°

?

字节流和字符流所处理的问题有所区别,字节流是以 8bits 为单位处理问题,而在Java中,字符流处理的最基本的单元是Unicode码元,其大小为 16bits。

?

设备上的数据无论是图片或者视频,文字,它们都以二进制存储的。二进制的最终都是以一个8位为数据单元进行体现,所以计算机中的最小数据单元就是字节。意味着,字节流可以处理设备上的所有数据,所以字节流一样可以处理字符数据。

?

?

结论:只要是处理纯文本数据,就优先考虑使用字符流。 除此之外都使用字节流。

?

一)输入输出流:

输入流只能进行读操作,输出流只能进行写操作:

  • 输入流:InputStream或者Reader:从文件中读到程序中;
  • 输出流:OutputStream或者Writer:从程序中输出到文件中;

?

二)结点流:

直接与数据源相连,读入或读出,但直接使用节点流,读写不方便,这是由于每当处理一次,就会直接进行一次访存,这样频繁的处理必然会降低CPU的效率,于是增加了处理流。

?

?

三)处理流:

è??é??????????????è?°

所谓处理流,是指在以结点为基础之上,增加了一个缓冲区,可以将其视为一个黑箱或管道,里面包含了若干功能(1.缓冲功能,避免频繁读写硬盘 2.实现字节流和字符流之间的转换 3.将基础数据类型写入/读出到文件中)

?

?

四)转换流:

实现从字节流到字符流的转换。

?

从文件中读取内容:

class="java" name="code">import java.io.*;

public class Demo {
    public static void main(String[] args) throws IOException {

        String filename = "Demo.txt";
        BufferedReader buff = new BufferedReader(new FileReader(filename));

        String line;
        while ((line = buff.readLine()) != null) {
            System.out.print((line));
        }

        buff.close();
    }
}

?

?从程序中写入至文件:

import java.io.*;
import java.util.Scanner;

public class Demo {
    public static void main(String[] args) throws IOException {

        String filename = "Demo.txt";
        BufferedWriter buff = new BufferedWriter(new FileWriter(filename));

        Scanner in = new Scanner(System.in);
        System.out.println("Write something: ");

        String str = in.nextLine();
        buff.write(str);
        
        in.close();
        buff.close();
    }
}

?

?

上一篇: 史上最全java架构师技能图谱(上) 下一篇: 没有下一篇了!
发表评论
用户名: 匿名