io---FileOutputStreamDemo

本文深入探讨Java标准的输入与输出流,包括输入流和输出流的概念,节点流与处理流的区别,以及文件流的使用方法。重点讲解了FileOutputStream的创建与使用,包括覆盖写与追加写模式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package io;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

/**

  • JAVA IO java标准的输入与输出
  • Io:指的是input,output
  • 输入流:inputStream,是从外界到我们程序的方向。
  • 输入流是由于从外界读取数据的,java中所有的字节入流
  • 都统一的继承自java.io.InputStream.该类是一个抽象类
  • 定义了所有字节输入流都必须具有的读取字节的相关方法、
  • 输出流:outputStream
  • 输出流是由于向外界写出数据的,java.io.OutputStream是
  • 所有字节输出流的超类,定义了相关写字节的方法。
  • java将流划分为两大类:
  • 节点流:真实连接程序与另一端的"管道",复杂实际搬运数据的流。
  • 注:读写一定是基于节点流进行的。节点流又称"低级流"
  • 处理流:处理流不能独立存在,必须连接在其他流上,目的是将其连接的流中
  • 的数据经过当前处理流时可以对其进行某种加工处理,简化了我们在读写数据
  • 是的处理工作。
  • 处理流也称为"高级流"

*实际开发中,我们经常串联若干高级流并最终串联到低级流,使得数据在进行读写
*时流水线式的加工处理。这个过程也称为"流的连接",这也是我们学习java IO的
*精髓所在。
*
*而java标准的IO的好处则在于让我们以统一的,标准的读写操作与外接设备进行数据交换。
*
*文件流
*文件流是一堆低级流,用于读写文件。
*java.io.FileOutputStream:用于向文件中写数据的流
*java.io.FileIntputStream:用于从文件中读取数据的流。
*
*

  • @author W

*/
public class FileOutputStreamDemo {

public static void main(String[] args) throws IOException {
	/*
	 * 文件流默认的创建方式为覆盖写模式,即:若写的文件
	 * 已经存在,你们创建文件流时,文件流会现将该文件数据全部清除。
	 * 然后在将通过该流写出的数据写入到文件中。
	 * 
	 * 文件流是基于IO的标准读写,而IO的读写是顺序读写模式,
	 * 只能向后读或写,不能回退。
	 * 而RAF是基于指针的【随机读写】形式,所以可以任意读写文件
	 * 指定位置的内容。
	 */
//	FileOutputStream fos = new FileOutputStream("fos.txt");
	/*
	 * 文件输出流提供另一个构造方法:
	 * 可以再传入一个boolean值参数,若该值为true,
	 * 则是追加写模式
	 * 这种模式下,若写操作的文件已经存在,则原有数据
	 * 全部保留,通过当前留写入的内容会被追加到文件末尾
	 */
	FileOutputStream fos = new FileOutputStream("fos.txt",true);
	
//  RandomAccessFile fos = new RandomAccessFile("fos.txt","rw");
	
	String str = "走位,";
	byte[] data = str.getBytes("GBK");
	fos.write(data);
	
	
	str = "鬼手一刀";
	data  = str.getBytes("GBK");
	fos.write(data);
	System.out.println("写出完毕");
	
	fos.close();
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值