FileOutputStream

1、介绍

FileOutputStream是字节输出流的一种,继承于OutputStream,主要是用于写入诸如图像数据的原始字节流,其类图如图所示。

2、构造方法
构造方法主要作用
FileOutputStream(File file)创建文件输出流以写入由指定的 File对象表示的文件
FileOutputStream(File file, boolean append)创建文件输出流以写入由指定的 File对象表示的文件;boolean 如果为true ,那么字节将被写入文件的末尾,而不是开头
FileOutputStream(FileDescriptor fdObj)创建文件输出流以写入指定的文件描述符,表示与文件系统中实际文件的现有连接
FileOutputStream(String name)创建文件输出流以指定的名称写入文件
FileOutputStream(String name, boolean append)创建文件输出流以指定的名称写入文件;boolean 如果为true ,那么字节将被写入文件的末尾,而不是开头

3、常见方法

方法作用
write(byte[] b)b.length字节从指定的字节数组写入此文件输出流
write(byte[] b, int off, int len)从位于偏移量 off的指定字节数组写入 len字节到该文件输出流
write(int b)将指定的字节写入此文件输出流
close()关闭此文件输出流并释放与此流相关联的任何系统资源。此文件输出流可能不再用于写入字节。如果该流具有相关联的信道,则该信道也被关闭。

4、示例

需求:在a.txt文件中写入"hello,world!"

分析:

1、先创建fileOutputStream对象。

2、将内容写入到文件中。

3、关闭文件流,释放资源。

package com.IO.OutputStream;

import java.io.*;

public class FileOutputStreamDemo {
	public static void main(String[] args) {
		file_output_stream();
	}
	
	public static void file_output_stream() {
		String pathname = "D:\\file\\a.txt";
		//1、创建FileOutputStream对象
		FileOutputStream fileOutputStream = null;
		try {
//			fileOutputStream = new FileOutputStream(pathname); //这是将原本文件内容覆盖后重新写入,即从文件开头写起
			fileOutputStream = new FileOutputStream(pathname, true);//这是从文件中的最后位置写入,即追加到文件末尾
			//2、将内容写入文件中
//			fileOutputStream.write('H'); //这是写入单个字节的写法
			String data = "hello,world!";
			//getBytes():使用平台的默认字符集将该字符串编码为一个字节序列,并将结果存储到一个新的字节数组中。
//			当此字符串无法在默认字符集内编码时,此方法的行为是未指定的。当需要对编码过程进行更多的控制时,
//			应该使用CharsetEncoder类。
			fileOutputStream.write(data.getBytes());//这是写入多个字节的写法
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			try {
				fileOutputStream.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值