当前位置:   article > 正文

文件字节流_文件流的前1024字节 body参数

文件流的前1024字节 body参数

io流是为了读写文件中的数据

一、流

流的分类

按流向分:输入流:将数据读入程序
     输出流:将程序输出到文件
操作单元:字节流:传输字节型的数据(任何数据都能转换为字节)
     字符流:传输纯文本的数据
按功能分:节点流:数据从数据源直接到目的地
     功能流:提高节点流功能或性能

Inputstream

Inputstream字节输入流 此抽象类是表示字节输入流的所有类的超类。
子类:
FileInputStream 文件字节输入流
ByteArrayInputStream字节数组输入流
AudioInputStream音频输入流
PipedInputStream管道输入流

Outputstream

Outputstream字节输出流 此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到某个接收器。
子类:
ByteArrayOutputStream字节数组输出流
FileOutputStream字节数组输出流

二、文件字节输入流FileInputstream

构造方法

FileInputStream(File file) 通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的 File 对象 file 指定。

File src=new File("D:/test.txt");
new FileInputStream(src);
  • 1
  • 2

FileInputStream(String name) 通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。

new FileInputStream("D:/hehe.txt") ;
  • 1

方法:

  1. void close() 关闭此文件输入流并释放与此流有关的所有系统资源。
  2. int read() 从此输入流中读取一个数据字节。
  3. int read(byte[] b) 从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。
  4. int read(byte[] b, int off, int len) 从此输入流中将最多 len 个字节的数据读入一个 byte 数组中。
  5. long skip(long n) 从输入流中跳过并丢弃 n 个字节的数据。

步骤

  1. 指明数据源 文件的位置
  2. 选择流
  3. 读入
  4. 关闭

实例

public static void main(String[] args) throws IOException {
	//1.指明数据源文件的位置 
	File src=new File("D:/test.txt");
	//2.选择流  
	InputStream is=new FileInputStream(src);
	//3.读入
	byte[] car=new byte[1024];
	int len=-1;
	while((len=is.read(car))!=-1){
		System.out.println(new String(car,0,len));
	}
	//4.关闭
	is.close();
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

三、文件字节输出流Outputstream

构造方法

FileOutputStream(File file) 创建一个向指定 File 对象表示的文件中写入数据的文件输出流。

File src=new File("D:/test.txt");//输出流文件本身不存在,系统会自动创建,路径不存在,需要自己手动创建
new FileOutputStream(src);
  • 1
  • 2

FileOutputStream(String name) 创建一个向具有指定名称的文件中写入数据的输出文件流。

new FileOutputStream("D:/test.txt");
  • 1

FileOutputStream(String name, boolean append) 创建一个向具有指定 name 的文件中写入数据的输出文件流。

new FileOutputStream("D:/test.txt"true);
//true:在源文件后追加输出
//false:覆盖原文件内容输出
  • 1
  • 2
  • 3

方法:

  1. void write(byte[] b) 将 b.length 个字节从指定的 byte 数组写入此文件输出流。
  2. void write(byte[] b, int off, int len) 将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。
  3. abstract void write(int b) 将指定的字节写入此文件输出流。
  4. void close() 关闭此文件输出流并释放与此流有关的所有系统资源。
  5. void flush() 刷新此输出流并强制写出所有缓冲的输出字节。

步骤

  1. 建立联系
  2. 创建流
  3. 写出
  4. 刷出
  5. 关闭

实例

public static void main(String[] args) {
	//1.建立联系2.创建流 
	OutputStream os=null;
	try {
		os=new FileOutputStream("D:/test.txt",true);
		String str="ABC";
		byte[] car=str.getBytes();
		//3.写出
		os.write(car);
		//4.刷出
		os.flush();	
	} catch (FileNotFoundException e) {
		e.printStackTrace();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	} finally{
		//关闭
		try {
			if(os!=null){//防止空指针异常
				os.close();
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/218594
推荐阅读
相关标签
  

闽ICP备14008679号