Java 流笔记
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 流笔记的更多相关文章
- Java开发笔记(八十八)文件字节I/O流
前面介绍了如何使用字符流读写文件,并指出字符流工具的处理局限,进而给出随机文件工具加以改进.随机文件工具除了支持访问文件内部的任意位置,更关键的一点是通过字节数组读写文件数据,采取字节方式比起字符方式 ...
- Java开发笔记(八十五)通过字符流读写文件
前面介绍了文件的信息获取.管理操作,以及目录下的文件遍历,那么文件内部数据又是怎样读写的呢?这正是本文所要阐述的内容.File工具固然强大,但它并不能直接读写文件,而要借助于其它工具方能开展读写操作. ...
- Java开发笔记(七十二)Java8新增的流式处理
通过前面几篇文章的学习,大家应能掌握几种容器类型的常见用法,对于简单的增删改和遍历操作,各容器实例都提供了相应的处理方法,对于实际开发中频繁使用的清单List,还能利用Arrays工具的asList方 ...
- Java开发笔记(九十一)IO流处理简单的数据压缩
前面介绍的文件I/O,不管是写入文本还是写入对象,文件中的数据基本是原来的模样,用记事本之类的文本编辑软件都能浏览个大概.这么存储数据,要说方便确实方便,只是不够经济划算,原因有二:其一,写入的数据可 ...
- java学习笔记16--I/O流和文件
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input Output)流 IO流用来处理 ...
- Java笔记:Java 流(Stream)、文件(File)和IO
更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...
- Java开发笔记(八十九)缓存字节I/O流
文件输出流FileOutputStream跟FileWriter同样有个毛病,每次调用write方法都会直接写到磁盘,使得频繁的写操作性能极其低下.正如FileWriter搭上了缓存兄弟Buffere ...
- Java 学习笔记 IO流与File操作
可能你只想简单的使用,暂时不想了解太多的知识,那么请看这里,了解一下如何读文件,写文件 读文件示例代码 File file = new File("D:\\test\\t.txt" ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
随机推荐
- 【转载】在Linux中使用VS Code编译调试C++项目
原文:在Linux中使用VS Code编译调试C++项目 最近项目需求,需要在Linux下开发C++相关项目,经过一番摸索,简单总结了一下如何通过VS Code进行编译调试的一些注意事项. 关于VS ...
- form 表单
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- [JAVA设计模式]第四部分:行为模式
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Socket通信常用方法
使用tcp协议,链接服务器的方法 /// <summary> /// 连接使用tcp协议的服务端 /// </summary> /// <param name=" ...
- Codeforces Round #377 (Div. 2) D. Exams 二分
D. Exams time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- 容易混淆的url src href
新手刚学习的时候会分不清 url src href这些,不知道什么情况下应该用哪个.现在让我来理一理. url 统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网 ...
- JMS【三】--ActiveMQ简单的HelloWorld实例
第一篇博文JMS[一]--JMS基本概念,我们介绍了JMS的两种消息模型:点对点和发布订阅模型,以及消息被消费的两个方式:同步和异步,JMS编程模型的对象,最后说了JMS的优点. 第二篇博文JMS[二 ...
- Spring的DI(Ioc) - 注入bean 和 基本数据类型
注入bean有两种方式: 注入其他bean: 方式一 <bean id="orderDao" class="cn.itcast.service.OrderDaoBe ...
- Android获取窗体信息的Util方法
package com.wangyi.tools; import android.app.Activity; import android.util.DisplayMetrics; public cl ...
- c 函数调用产生的汇编指令和数据在内存情况(2)
c 函数调用产生的汇编指令和数据在内存情况(1) 一直对函数调用的具体汇编指令和各种变量在内存的具体分配,一知半解.各种资料都很详细,但是不实践,不亲自查看下内存总不能笃定.那就自己做下. 两个目的: ...