java 流

Posted 时过境迁E

tags:

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

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;

public class Liu {
	
   public static void main(String[] args){
	   
	   File file = new File("D:\\\\二阶段java\\\\0731\\\\111\\\\aaa.java");
	 
	   
	   int a = -1;
	   try{
		   InputStream in = new FileInputStream(file);
		   
		   while((a = in.read()) != -1){
			   System.out.print((char)a);
		   }
		   in.close();
	   }catch(Exception e){
		   e.printStackTrace();
		   
	   }
	   
   }

}

  

 

 

 

 

流的分类
按照数据流的方向
输入流(Input), 输出流(Output)
输入流: 从文件往程序走数据
输出流: 从程序往文件走数据

 

JDK提供的流
提供了四个基本抽象类: InputStream, OutputStream, Reader, Writer

 

InputStream的基本方法:
int read(): 每次调用这个方法, 就读取一个字节, 以整数的形式返回
int read(byte[] buffer---缓冲区): 让流每次读满一个缓冲区, 再统一处理, 先存在缓冲区里, 返回值int是返回实际当中读取了多少字节数(伤硬盘的原理)
int read(byte[] buffer, int offset, int length): 也是一个缓冲区, 读取length长度的字节数, 存到buffer的缓冲区里, 从buffer的offset位置开始存, 返回值是实际读了多少字节数
close(): 关闭资源

OutputStream的基本方法:
void write(int b)
void write(byte[] b)
int wirte(byte[] buffer, int offset, int length)
close()
flush(): 将缓冲区中的文件全部写出
在使用流的时候的一个良好的习惯, 先flush, 再close

Reader的基本方法:
int read()
int read(char[] c)
int read(char[] c, int offset, int length)
close()

Writer的基本方法:
void write()
void write(char[] c)
void write(char[] c, int offset, int length)
void write(String s)
void write(String s, int offset, int length)
close()
flush()

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

Java8 Stream流

从流输入中解析没有根元素的 XML 片段列表

条件片段和导航重用

此应用小部件片段中所有意图 (PendingIntents) 的逻辑流

Java生成二进制文件与Postman以二进制流的形式发送请求

java web二进制流的图片如何用response返回给前台