带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类
package hengzhe.cn.o1; import java.io.*; /*
* 带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类
* 与。net的cache是一样为缓存,有了这个就可以在流中实现skip(),mark(),reset()等方法
* bufferedinputstream可以对inputstream类进行带缓存的包装以达到性能的优化。
* 有两个构造函数BufferdInputStream(InputStream in)、和BufferdInputStream(InputStream in,int size)
* 其中第一种是指定32个字节的缓存流,第二个就不得了,可以根据机器的配置自行指定
* BufferdoutputStream和outputStream一样,只不过有个flush()方法用来将缓存强行输出,该方法也有两个构造函数:
* BufferdOutPutStream(OutPutStream in)、和BufferdOutPutStream(OutPutStream in,int size)
* 其中第一种是指定32个字节的缓存流,第二个就不得了,可以根据机器的配置自行指定
* 注:flush()方法就是将缓存区里的数据强行排空,只对OutPutStream有效
* BufferedReader类常用的方法如下:
* read()、readLine(),write(string s ,int off,int len):写放字条的某一部分、flush()刷新缓存、newLine()写入一行分隔符
*/
public class Buffered
{ public static void main(String[] args)
{
String content[] =
{ "白日依", "山尽", "黄河入", "海流" };
File file = new File("e:java.txt");
try
{
FileWriter fw = new FileWriter(file);
BufferedWriter bufw = new BufferedWriter(fw);
for (int i = 0; i < content.length; i++)
{
bufw.write(content[i]);// 写入文件
bufw.newLine();// 以单行写入文件 }
bufw.close();
fw.close(); } catch (Exception e)
{
e.printStackTrace();
} // read
try
{
FileReader fr = new FileReader(file);
BufferedReader bufr = new BufferedReader(fr);
String str_info = null;
int i = 0;
while ((str_info = bufr.readLine()) != null)
{
i++;
System.out.println("第" + i + "行:" + str_info); }
bufr.close();
fr.close(); } catch (Exception ex)
{
ex.printStackTrace(); }
}
/*
* */ }



带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类的更多相关文章
- 带缓存的基于DateTimeFormatter的日期格式化工具类
JAVA中的SimpleDateFormat是非线程安全的,所有在1.8的JDK版本里提供了线程安全的DateTimeFormatter类,由于是线程安全的,故我们可以将此类缓存起来多次利用提高效率. ...
- 不带缓存的I/O和标准(带缓存的)I/O
首先,先稍微了解系统调用的概念: 系统调用,英文名system call,每个操作系统都在内核里有一些内建的函数库,这些函数可以用来完成一些系统系统调用把应用程序的请求传给内核,调用相应的 ...
- Yii的自带缓存的使用
Yii的自带缓存都继承CCache 类, 在使用上基本没有区别缓存基础类 CCache 提供了两个最常用的方法:set() 和 get().要在缓存中存储变量 $value,我们选择一个唯一 ID 并 ...
- Spring Boot 自带缓存及结合 Redis 使用
本文测试环境: Spring Boot 2.1.4.RELEASE + Redis 5.0.4 + CentOS 7 自带缓存 如果没有使用缓存中间件,Spring Boot 会使用默认的缓存,我们只 ...
- 基于AFN封装的带缓存的网络请求
给大家分享一个基于AFN封装的网络请求 git: https://github.com/zhouxihi/NVNetworking #带缓存机制的网络请求 各类请求有分带缓存 , 不带缓存, 可自定义 ...
- Delphi中带缓存的数据更新技术
一. 概念 在网络环境下,数据库应用程序是c/s或者是多层结构的模式.在这种环境下,数据库应用程序的开发应当尽可能考虑减少网络数据传输量,并且尽量提高并发度.基于这个目的,带缓存的数据更新技术应运而生 ...
- Java中带包(创建及引用)的类的编译
Java中带包(创建及引用)的类的编译与调试 java源程序的编译大家都知道,也就是cmd中到源文件所在目录下javac **.java即可,当程序中有包声明还能简简单单的直接javac **.jav ...
- 带标准IO带缓存区和非标准IO 遇到fork是的情况分析
废话不多说 直接代码 #include<stdio.h> #include<sys/types.h> #include<unistd.h> #include< ...
- 不带缓存IO和标准(带缓存)IO
linux对IO文件的操作分为: 不带缓存:open read.posix标准,在用户空间没有缓冲,在内核空间还是进行了缓存的.数据-----内核缓存区----磁盘 假设内核缓存区长度为100字节,你 ...
随机推荐
- 【转载】JDBC连接各种数据库的字符串
oracle driverClass:oracle.jdbc.driver.OracleDriver url:jdbc:oracle:thin:@127.0.0.1:1521:dbname ...
- QCopChannel的用法
QT提供了很多的进程间通讯的方法,例如共享内存,QProcess等等.但有一种方法是嵌入式端所独有的,那就是Qt Communications Protocol(QCOP)QT通讯协议,这种方法只能用 ...
- 玩转PowerShell第三节——【SCOM Maintenance Mode】-技术&分享
概述 Microsoft System Center Operations Manager 2007 sp1(SCOM)是微软推出的专业系统监控软件,可以监控部署在网络中的服务器.应用系统和客户端,提 ...
- Android自定义之仿360Root大师水纹效果
很简单的一个效果.我直接上图了. 代码就不详细说了,贴出关键代码就行了. @Override protected void onDraw(Canvas canvas) { s ...
- [Unity3D] 浅尝Unity3D
01. Move and Rotate 标准全局坐标系 Keyboard using UnityEngine; using System.Collections; public class NewBe ...
- intellij 调试方法
intellij 调试方法 转自 http://www.th7.cn/Program/net/201410/296492.shtml
- TOGAF培训讲义
我作为国内首先进行TOGAF研究和实践的架构师之一,曾在中国软件技术大会和中国软件工程大会做过TOGAF相关的主题演讲,并在多家大中型企业做过企 业架构内训.这个是我在给需要企业架构的企业做内训时的讲 ...
- EF封装类,供参考!
以下是我对EF DB FIRST 生成的ObjectContext类进行封装,代码如下,供参考学习: using System; using System.Collections.Generic; u ...
- Angular系列------AngularJS快速开始(转载)
Hello World! 开始学习AngularJS的一个好方法是创建经典应用程序“Hello World!”: 使用您喜爱的文本编辑器,创建一个HTML文件,例如:helloworld.html. ...
- Linux永久修改系统时间和时区方法
修改时区: 1> 找到相应的时区文件 /usr/share/zoneinfo/Asia/Shanghai 用这个文件替换当前的/etc/localtime文件. 或者找你认为是标准时间的服务器, ...