文件读取以及二进制文件读写

文章分类:Java编程
一,文本文件的读取

1,FileInputStream:按字节读取文件
1.1,导入包
import java.io.FileInputStream;
java.io.InputStream;
import java.io.*;
1.2,生成一个InputStream对象
InputStream in = new FileInputStream("myfile\\a.txt");//("myfile\\a.txt",true),写入的内容追加在原有内容的后面,不覆盖
1.3,一个一个字节地读取文件内容
try {
int size = in.available();
char x[] = new char[200];
for (int i = 0; i < size; i++) {
x[i] = (char)in.read();
System.out.print(x[i]);
}
}
catch (IOException ex1) {
ex1.printStackTrace();
}
1.4,关闭对象
finally{
try {
in.close();
}
catch (IOException ex2) {
ex2.printStackTrace();
}
}
=================================================

2,FileOutputStream:按字节写入文件
2.1,导入包
import java.io.*;
2.2,声明一个OutputStream引用
OutputStream out =null;
2.3,构造一个OutputStream对象,并在其中写入内容
try {
out = new FileOutputStream("b.txt");
String str ="java终于完了";
byte[] b = str.getBytes();
try {
out.write(b, 0, b.length);
}
catch (IOException ex1) {
ex1.printStackTrace();
}
2.4,关闭对象
finally{
try {
out.close();
}
catch (IOException ex2) {
ex2.printStackTrace();
}
}

=================================

3,BufferedReader:按字符读取内容
3.1,导入包
import java.io.*;
3.2,声明一个FileReader和BufferedReader的引用
FileReader fr = null;
BufferedReader buf =null;
3.3,构造一个FileReader和BUfferedReader的对象
fr = new FileReader("myfile\\a.txt");
buf = new BufferedReader(fr);
3.4,按行读取文件内容
try {
String s = buf.readLine();
while(s!=null)
{
System.out.println(s);
s =buf.readLine();

}
}
catch (IOException ex1) {
ex1.printStackTrace();
}
3.5,关闭对象连接
finally{
try {
buf.close();
fr.close();
}
catch (IOException ex2) {
ex2.printStackTrace();
}
}

====================================

4,BufferWriter:按字符写入内容
4.1,导入包
import java.io.*;
4.2,声明一个FileWriter和BufferedWriter的引用
FileWriter fw = null;
BufferedWriter buf = null;
4.3,构造一个FileWriter和BUfferedWriter的对象,并写入内容
try {
fw = new FileWriter("c.txt");
buf = new BufferedWriter(fw);
buf.write("你好!!");
}
catch (IOException ex) {
ex.printStackTrace();
}
4.4,关闭对象连接
finally{
try {
buf.close();
fw.close();
}
catch (IOException ex1) {
ex1.printStackTrace();
}
}

====================================

二,二进制文件的读写
1,导入包
import java.io.*;
2,生成FileInputStream,DataInputStream,FileOutputStream,DataOutputStream的对象
FileInputStream fin = new FileInputStream("d:\\x.jpg");
DataInputStream da = new DataInputStream(fin);
FileOutputStream fout = new FileOutputStream("e:\\b.jpg");
DataOutputStream dout = new DataOutputStream(fout);
3,写入数据
int temp ;
try {
while ( (temp = da.read()) != -1) {
dout.write(temp);
}
}
catch (IOException ex1) {
ex1.printStackTrace();
}
4,关闭连接
finally{
try {
fin.close();
da.close();
fout.close();
dout.close();
}
catch (IOException ex2) {
ex2.printStackTrace();
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值