字节流

Posted 名字真的很急用

tags:

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

IO流有很多种,按照操作数据的不同,可以分为字节流和字符流,按照数据传输方向的不同又可分为输入流和输出流,程序从输入流中读取数据,向输出流中写入数据。在IO包中,字节流的输入输出流分别用java.io.InputStream和java.io.Outputstream表示,字符流的输入输出分别用java.io.Reader和java.io.Writer表示。

字节流
在计算机中,无论是文本,图片,音频还是视频,所有文件都是以二进制(字节)形式存在的,IO流中针对字节的输入输出提供了一系列的流,统称为字节流。在jdk中提供了二个抽象流InputStream和OutputStream,它们是字节流的顶级父类。

InputStream常用方法
int read()
读取一个8位的字节,把它转换为0-255之间的整数,并返回一个整数。
int read(byte [] b)保存在一个字节数组中,返回的整数表示读取字节的数目。
void close()关闭释放资源。

OutputStream的常用方法
int write(int b)
向输出流写入一个字节。
void write(byte [] b)
以数组的形式写入输出流。
void flush()
刷新此输出流并强制写出所有缓冲的输出字节。
void close()
关闭并释放资源。

字节流的读写文件
由于计算机的数据基本都保存在硬盘文件中,因此操作文件中的数据是一种很常见的操作,在操作文件时,最常见的从文件中读取数据并写入数据,即文件的读写。针对文件的读写,jdk专门提供了二个类,分别是FileInputStream和FileOutputStream。
文件数据的读取
import java.io.*
public class example{
public static void main(String[] args) throws Exception{
FileInputStream in = new FileInputStream(“test.txt”);
int b=0;
while(true){
b = in.read();
if(b==-1){
break;

System.out.println(b);

in.close();


数据写入文件
import java.io.*
public class example{public static void main(String[] args) throws Exception{
FileOutputStream out = new FileOutputStream(“test.txt”);
String str =“天下无敌”;
byte [] b =str.getBytes();
for(int i=0; i<b.length; i++){
out.write(b[i]);

out.close();

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

JAVA读取字节流

将无符号字节流转换为有符号字节流 Golang

C#文件转换为字节流及字节流转换为文件

字节流与字符流复习

java读取文件问题该选字节流还是字符流?

字节流字符流中