IO操作-BufferedInputStream,InputStreamReader,DataInputStream基本演示
来源:互联网 发布:公孙止 知乎 编辑:程序博客网 时间:2024/05/19 00:48
缓冲流:前面的字节流和字符流都没有使用缓冲区,这就意味着,每次的读写操作都要交给操作系统来处理。这样的做法可能会对系统的性能造成很大的影响,因为每次访问操作都可能会引发磁盘硬件的读写或网络的访问,这些磁盘硬件读写或网络访问会占用大量的资源,影响效率。缓冲流是一种装饰器
类,目的是让原字节流,字符流新增缓冲的功能。常使用BufferedInputStream或BufferedOutputStream来进行修饰。
字节流转为字符流:将一个字节流转为一个字符流,通常使用InputStreamReader或OutputStreamWriter进行转换。
数据流:简单来说就是允许字节流直接操作基本数据类型和字符串。常用DataInputStream或DataoutputStream进行转换。
演示
import java.io.BufferedReader;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.FileReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStream;public static void main(String[] args) {//fun1();//fun2();//fun3();}//演示BufferedReaderpublic static void fun1(){BufferedReader br = null;try {//BufferedReader的参数类型为Reader类br = new BufferedReader(new FileReader("F:\\test.txt"));String str = "";while((str = br.readLine()) != null){//BufferedReader常用的方法就是readLine,如果到了文件尾部,返回null。节点流类似的方法返回-1System.out.println(str);}System.out.println("读取完毕!");} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}finally{//关闭流if(br != null){try {br.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}//演示InputStreamReaderpublic static void fun2(){//system.in为inputStream字节流,将其转为字符流BufferedReader br = null;try {//InputStreamReader的参数是InputStream类型的br = new BufferedReader(new InputStreamReader(System.in));System.out.println("请输入:");String str = br.readLine();System.out.println("输入的是:"+str);} catch (IOException e) {e.printStackTrace();}finally{//关闭流try {if(br != null){br.close();}} catch (IOException e) {e.printStackTrace();}}}//演示DataOutputStreampublic static void fun3(){DataOutputStream dos = null;try {//DataOutputStream的参数为OutputStream类型的,所以创建一个FileOutputStream对象dos = new DataOutputStream(new FileOutputStream("F:\\test1.txt"));dos.writeInt(45);dos.writeByte(0);dos.writeLong(469553L);dos.writeUTF("试一下啦");dos.writeChar('a');} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}finally{//关闭流if(dos != null){try {dos.close();} catch (IOException e) {e.printStackTrace();}}}}
阅读全文
0 0
- IO操作-BufferedInputStream,InputStreamReader,DataInputStream基本演示
- IO操作演示(DataInputStream、DataOutputStream)
- 黑马程序员——【Java】IO——操作基本数据类型的流:DataInputStream & DataOutputStream
- Java IO--数据操作流DataOutputStream/DataInputStream
- IO操作-字节流字符流基本演示
- IO BufferedInputStream
- IO操作-ObjectInputStream演示
- 【Java.IO】I/O 字节处理流 - 之- 基本Java数据类型操作流 —— DataInputStream, DataOutputStream
- 21-IO流-21-IO流(字节流-操作文件基本演示)
- BufferedInputStream操作
- java IO操作:转换流--OutputStreamWriter类与InputStreamReader类
- DataInputStream 和 DataOutputStream 用于操作基本类型的流对象
- 黑马程序员:操作基本数据类型的流对象:DataInputStream、DataOutputStream
- DataInputStream 和DataOutputStream用于操作Java的基本数据类型
- DataInputStream和DataOutputStream操作基本数据类型的流
- Java IO之DataInputStream
- Java IO - DataInputStream&DataOutputStream
- IO之DataInputStream
- 7---------迪杰斯特拉算法的简单应用
- 捋一下最近做的东西
- 机器学习中的范数规则化之(一)L0、L1与L2范数
- 【MATLAB入门】半波整流和全波整流
- 自定义View 波浪
- IO操作-BufferedInputStream,InputStreamReader,DataInputStream基本演示
- Lasso regression(稀疏学习,R)
- 循环外定义count=0,循环执行count=count++后,输出count仍是0
- 静态资源版本化
- 【Java】基本类型之short(四)
- 统计学习方法 李航---第1章 统计学习方法概论
- 数据挖掘学习------------------3-数据回归方法-1-一元回归
- 梯度下降(Gradient Descent)小结
- git git extension操作