javaSE——字节流
Posted BU_L
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaSE——字节流相关的知识,希望对你有一定的参考价值。
IO流:InputStream/OutputStream
字节流:
文件输出流 :内存 ——>文件
文件输入流 :内存<——文件
应用 文件输入/出流 文件 字节输入/出流:ByteInputStream
InputStream/OutStream都是抽象的父类
文件输入流:FileInputStream 从文件系统中的某个文件中获得输入字节。哪些文件可用取决于主机环境。
FileInputStream
用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用 FileReader
。
package 字节流; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; public class Demo01 { public static void main(String args[]){ try { InputStream is = new FileInputStream("D:/lala.txt"); while(true){ int data = is.read(); if(data == -1){ break; } System.out.print((char)data); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
read()每次读入一个字节,若在末尾无字节时返回值 -1.
文件输出流:文件输出流是用于将数据写入 File
或 FileDescriptor
的输出流。文件是否可用或能否可以被创建取决于基础平台。特别是某些平台一次只允许一个 FileOutputStream(或其他文件写入对象)打开文件进行写入。在这种情况下,如果所涉及的文件已经打开,则此类中的构造方法将失败。
注意:输入流与输出流是站在应用的角度来看的输入与输出。如果管子的流向是应用,则为输入流;若流向是文件,则为输出流。
字符与字节的区别:
字符是计算机中使用的文字和符号,如1,2,3,a,b,¥,—,“中”等。
字节是计算机用于计量存储容量的计量单位,表示数据量的多少。可以计算要给变量分配多大的内存空间,比如char型占用2个字节的内存空间,int型占4个字节。
java中,Byte型是最小的数据类型。char型会被分配两个字节的存储空间。一个char型的字母占用1个字节空间,一个char型的汉字刚好占用两个字节空间。如果是多个汉字则可定义为String型。
以上是关于javaSE——字节流的主要内容,如果未能解决你的问题,请参考以下文章