BufferedReader 从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。操作: Reader

BufferedWriter 将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。操作:Writer

 
 

URL
openStream
和 System.in
非字符输入流
InputStreamReader 参数为 InputStream 字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。

 
 

如果是字符流,可以通过 BufferedReader 读取

 
 

所以有:

URL url=new URL("http://www.baidu.com");

InputStreamReader isr=new InputStreamReader(url.openStream());

BufferedReader br= new
BufferedReader(isr);

String str;

sb=new StringBuffer();

while((str=br.readLine())!=null)

{

sb.append(str);

}

 
 

 
 

FileReader
继承 InputStreamReader 所以

FileReader fr= new FileReader(f);

BufferedReader br= new BufferedReader(fr); #这里不需要在包装成InputStreamReader

String t;

StringBuffer sb= new StringBuffer();

while ((t=br.readLine())!=null) {

    sb.append(t);

}

 
 

文件写入

File f= new File("./a.txt");

try{

FileWriter fw= new FileWriter(f);//继承
OutputStreamWriter
此类也提供写入方法

 
 

//FileOutputStream _fw= new FileOutputStream("./a.txt");

//OutputStreamWriter fw=new OutputStreamWriter(_fw);

 
 

BufferedWriter bw=new
BufferedWriter(fw);

bw.write(sb.toString());

bw.close();

fw.close();

}catch(IOException e){

}

 

//对象流

a a1 = new a("a");

ObjectOutputStream oos= new ObjectOutputStream(new FileOutputStream("a.txt"));

oos.writeObject(a1);

oos.close();

 

ObjectInputStream ois=new ObjectInputStream(new FileInputStream("a.txt"));

a b1 = (a)ois.readObject();

b1.run();

 

//二进制流

DataOutputStream dos= new DataOutputStream(new FileOutputStream("a.txt"));

dos.writeInt(1000);

dos.close();

 

DataInputStream dis= new DataInputStream(new FileInputStream("a.txt"));

int i=dis.readInt();

System.out.print(i+1000);

 

 

Java 流笔记的更多相关文章

  1. Java开发笔记(八十八)文件字节I/O流

    前面介绍了如何使用字符流读写文件,并指出字符流工具的处理局限,进而给出随机文件工具加以改进.随机文件工具除了支持访问文件内部的任意位置,更关键的一点是通过字节数组读写文件数据,采取字节方式比起字符方式 ...

  2. Java开发笔记(八十五)通过字符流读写文件

    前面介绍了文件的信息获取.管理操作,以及目录下的文件遍历,那么文件内部数据又是怎样读写的呢?这正是本文所要阐述的内容.File工具固然强大,但它并不能直接读写文件,而要借助于其它工具方能开展读写操作. ...

  3. Java开发笔记(七十二)Java8新增的流式处理

    通过前面几篇文章的学习,大家应能掌握几种容器类型的常见用法,对于简单的增删改和遍历操作,各容器实例都提供了相应的处理方法,对于实际开发中频繁使用的清单List,还能利用Arrays工具的asList方 ...

  4. Java开发笔记(九十一)IO流处理简单的数据压缩

    前面介绍的文件I/O,不管是写入文本还是写入对象,文件中的数据基本是原来的模样,用记事本之类的文本编辑软件都能浏览个大概.这么存储数据,要说方便确实方便,只是不够经济划算,原因有二:其一,写入的数据可 ...

  5. java学习笔记16--I/O流和文件

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input  Output)流 IO流用来处理 ...

  6. Java笔记:Java 流(Stream)、文件(File)和IO

    更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...

  7. Java开发笔记(八十九)缓存字节I/O流

    文件输出流FileOutputStream跟FileWriter同样有个毛病,每次调用write方法都会直接写到磁盘,使得频繁的写操作性能极其低下.正如FileWriter搭上了缓存兄弟Buffere ...

  8. Java 学习笔记 IO流与File操作

    可能你只想简单的使用,暂时不想了解太多的知识,那么请看这里,了解一下如何读文件,写文件 读文件示例代码 File file = new File("D:\\test\\t.txt" ...

  9. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

随机推荐

  1. How do I reset Windows Update components?

    https://support.microsoft.com/en-us/kb/971058 Download and run the Windows Update Troubleshooter for ...

  2. 最新的windows xp sp3序列号(绝对可通过正版验证)

    MRX3F-47B9T-2487J-KWKMF-RPWBY(工行版) 可用(强推此号) QC986-27D34-6M3TY-JJXP9-TBGMD(台湾交大学生版) 可用 CM3HY-26VYW-6J ...

  3. hdu 1869 (Floyd)

    http://acm.hdu.edu.cn/showproblem.php?pid=1869 六度分离 Time Limit: 5000/1000 MS (Java/Others)    Memory ...

  4. Ubuntu下手动安装VMware Tools步骤

    To mount the CD image and extract the contents: Power on the virtual machine. Log in to the virtual ...

  5. mac 配置jdk maven

    1.从oracle下载jdk 链接:http://www.oracle.com/technetwork/java/javase/downloads/index.html 然后安装jdk 2.下载Mav ...

  6. strange error encountered today in ROS

    I reinstalled my ubuntu system and also ROS. I tested slam_karto package when some strange error cam ...

  7. [转]-Gradle使用手册(三):构建任务

    原文地址:http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1. ...

  8. [转载] 分享D瓜哥最近攒的资料(架构方面)

    原文: http://www.diguage.com/archives/41.html 扯扯蛋 以前见过零零散散地介绍一些知名网站架构的分析文章.最近D瓜哥也想研究一下各大知名网站的架构.所以,就搜集 ...

  9. V8 引擎的sort算法

    用的是快速排序,有点小问题 function ArraySort(comparefn) { // In-place QuickSort algorithm. // For short (length ...

  10. android MTK驱动背光唤醒流程

    在标准的android驱动中,睡眠唤醒流程非常清晰,能够较方便的更改lcd唤醒时间和led背光的点亮时间,但是也很容易出现问题,比如说闪屏,唤醒慢! 出现闪屏有两个原因 1. 开背光时间在唤醒lcd前 ...