一、IO流补充
FileOutputStream/FileInputStream
read读取数据
字节流一般用复制、上传、下载、传输文件
作为节点流,被其他流封装
一个字节一个字节的读取
//创建输入流和输出流对象
FileInputStream in = new FileInputStream("D:/Redis-x64-3.2.100.msi");
FileOutputStream out = new FileOutputStream("D:/img/Redis-x64-3.2.100.msi");
//一个读、一个写
int i=0;
while((i=in.read())!=-1){
out.write(i);
out.flush();
}
//关闭流
out.close();
in.close();
long end = System.currentTimeMillis();//从1970至今的毫秒数
System.out.println("文件传输时间:"+(end-start));
一组字节一组字节的读取(速度快,效率高)
long start = System.currentTimeMillis();//从1970至今的毫秒数
//创建输入流和输出流对象
FileInputStream in = new FileInputStream("D:/Redis-x64-3.2.100.msi");
FileOutputStream out = new FileOutputStream("D:/img/Redis-x64-3.2.101.msi");
//一个读、一个写
int len=0;
byte[]bytes=new byte[1024];
//一次读取一组,把数据读取到byte数组中,返回的是长度,读取不到返回-1
while((len=in.read(bytes))!=-1){
out.write(bytes,0,len);//读多少,写多少(读了len个,就写len个)
}
//关闭流
out.close();
in.close();
long end = System.currentTimeMillis();//从1970至今的毫秒数
System.out.println("文件传输时间:"+(end-start));
柜台管理商品数据持久化存储方式一:
使用字符流过滤流:BufferedReader/BufferedWriter
见案例[java_base10 cn.hp.demo02]
柜台管理商品数据持久化存储方式二:
使用字符流过滤流:BufferedReader/BufferedWriter
见案例[java_base10 cn.hp.demo03]
柜台管理商品数据持久化存储方式三:
使用对象流过滤流:
见案例[java_base10 cn.hp.demo04]