io流

本文介绍了作者初次尝试使用Java IO流进行文件读写的经历,并对比了使用FileInputStream/FileOutputStream与BufferedInputStream/BufferedOutputStream的不同之处。

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

这是我静下心来写的第一段代码,虽然比较简单,但也算是我从不知道怎样编程到开始自己思考和动手的渐变过程。看到自己写入的文件完整地出现在txt文件中时,内心第一次有了比较大的触动,跟以往不同,因为以前的代码基本都是copy熊哥的,所以界面上出现东西的时候觉得不是自己写出来的,没有对熊哥讲的加以理解。
代码:用fileinputstream类的对象读取一个文件并用fileoutputstream类的对象写入另一个文件中。
package io流;

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

public class Stream {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
Stream stream = new Stream();
stream.charstream();
}
public void charstream() throws IOException{
//创建一个输入流
FileInputStream fis = new FileInputStream("src/io流/Stream.java");
//创建一个输出流
FileOutputStream fos = new FileOutputStream("src/io流/写入的文件.txt");
//定义一个byte数组,存储要读取的文件
byte array[]=new byte[fis.available()];
//读取文件
fis.read(array);
//写入文件
fos.write(array);
//关闭文件
fis.close();
fos.close();
}

}
写入的文件:
package io流;

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

public class Stream {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
Stream stream = new Stream();
stream.charstream();
}
public void charstream() throws IOException{
//创建一个输入流
FileInputStream fis = new FileInputStream("src/io流/Stream.java");
//创建一个输出流
FileOutputStream fos = new FileOutputStream("src/io流/写入的文件.txt");
//定义一个byte数组,存储要读取的文件
byte array[]=new byte[fis.available()];
//读取文件
fis.read(array);
//写入文件
fos.write(array);
//关闭文件
fis.close();
fos.close();
}

}


缓冲流读写文件代码:
package io流;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class Stream {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
Stream stream = new Stream();
stream.charstream();
}
public void charstream() throws IOException{
//创建一个输入流
InputStream fis = new FileInputStream("src/io流/Stream.java");
//创建一个输出流
OutputStream fos = new FileOutputStream("src/io流/写入的文件2.txt");
//根据输入流创建一个缓冲输入流
BufferedInputStream bis = new BufferedInputStream(fis);
BufferedOutputStream bos = new BufferedOutputStream(fos);
//定义一个byte数组,存储要读取的文件
byte array[]=new byte[fis.available()];
//读取文件
//fis.read(array);
bis.read(array);
//写入文件
//fos.write(array);
System.out.println(new String(array));
bos.write(array);
//System.out.println(new String(array));

注意:[u]//关闭文件前要先刷新此缓冲的输出流。[/u]
bos.flush();
//关闭文件
fis.close();
fos.close();
bis.close();
bos.close();
}

}
[u] 缓冲流读写文件要注意一个问题,那就是缓冲流必须在fileinputstream类和fileoutputstream类创建对象后才能使用。[/u]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值