File.io读取文件(五)

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;


public class TextIo01 {
public static void main(String[] args) throws IOException {
String filepath="D:/a.txt";
writeToFile(filepath);
readFromFile(filepath);
}
/**
 * File f=new File("D:/a.txt");//无论保存什么格式类型的文件,都是乱码,这里
 * 是存给机器识别的,不是人看的
 * DataOutputStream:
 */
public static void writeToFile(String filepath) throws IOException{
int i=100;
String s="abc123中国";
float f=4.5f;
File fos=new File(filepath);//无论保存什么格式类型的文件,都是乱码,这里
try(//jdk1.7,资源关闭新特性
DataOutputStream dos=new DataOutputStream(
new BufferedOutputStream(
new FileOutputStream(fos)));
){
dos.writeInt(i);   //按原数据的,数据类型,存入文件
dos.writeUTF(s);
dos.writeFloat(f);

dos.flush();//刷新管道数据
//dos.close();

}
}
public static void readFromFile(String filepath) throws IOException{
try(
DataInputStream bis=new DataInputStream(
new BufferedInputStream(
new FileInputStream(new File(filepath))));
){
int i=bis.readInt();
String s=bis.readUTF();
float f=bis.readFloat();
//bis.close();
System.out.printf("整数:%1$d 字符串:%2$s 浮点数:%3$f",i,s,f);
}//catch{//可见catch捕获异常}

}
//===============================
public static byte[] writeTobyte() throws IOException{
byte[] dest;
int i=100;
String s="基本数据类型";
float f=4.5f;
try(//jdk1.7,资源关闭新特性
ByteArrayOutputStream bos=new ByteArrayOutputStream();
DataOutputStream dos=new DataOutputStream(
new BufferedOutputStream(
bos));
){
dos.writeInt(i);
dos.writeUTF(s);
dos.writeFloat(f);

dos.flush();//刷新管道数据
dest=bos.toByteArray();
//dos.close();

return dest;}
}
public static void readFrombyte(byte[] src) throws IOException{
try(
DataInputStream bis=new DataInputStream(
new BufferedInputStream(
new ByteArrayInputStream(src)));
){
int i=bis.readInt();
String s=bis.readUTF();
float f=bis.readFloat();
//bis.close();
System.out.printf("%1$d  %2$s %3$f",i,s,f);
}//catch{//可见catch捕获异常}

}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值