import java.io.File;
import java.io.Writer;
import java.util.StringTokenizer;
import java.io.Reader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.BufferedWriter;
public class test_main { public static void main(String[] args) {
// TODO 自动生成的方法存根
File fRead = new File("english.txt");
File fWrite = new File("englishCount.txt");
try {
fRead.createNewFile();
Writer out = new FileWriter(fWrite);
BufferedWriter bufferWrite = new BufferedWriter(out);
/*BufferedWriter将文本写入字符输出流,缓冲字符,
以提供单个字符,数组和字符串地高效写入。
创建使用默认大小的输出缓冲区地缓冲字符输出流。*/
Reader in = new FileReader(fRead);
BufferedReader bufferRead = new BufferedReader(in);
/*BufferedReader从字符输入流读取文本,缓冲字符,以提供字符,数组
和行的高效读取。可以指定缓冲区大小,或者使用默认大小。*/
String str = null;
while((str=bufferRead.readLine())!=null) {
/*readLine读取一行文字。一行被视为由换行符('\n'),
回车符('\r')中的任意一个,紧跟换行符的回车符或到达
文件末尾终止(EOF)。*/
StringTokenizer fenxi = new StringTokenizer(str);
int count = fenxi.countTokens(); str +=" 句子中单词个数:"+count;
bufferWrite.write(str);
//写入一个字符串
bufferWrite.newLine();
//写入一行行分隔符。
}
bufferWrite.close();
out.close();
in = new FileReader(fWrite);
bufferRead = new BufferedReader(in);
String s = null;
System.out.println(fWrite.getName()+"内存");
while((s = bufferRead.readLine())!=null){
System.out.println(s);
}
bufferRead.close();
in.close();
}
catch(IOException e) {
System.out.println(e.toString());
//toString()是Throwable的方法
//返回对象类的name:调用该对象的结果
//创建此可抛出的本地化描述。 子类可以覆盖此方法,
//以生成特定于区域的消息。 对于不覆盖此方法的子类,
//默认实现将返回与getMessage()相同的结果。
}
} }

文件 I/O缓冲流的更多相关文章

  1. java——io、字节流缓冲区拷贝文件、字节缓冲流

    使用try catch finally关闭文件流: 写入文件: import java.io.*; public class exp{ public static void main(String[] ...

  2. Java文件与io——缓冲流

    对文件或其它目标频繁的读写操作,效率低,性能差. 使用缓冲流的好处,能够更高效的读写信息,原理是将数据先缓冲起来,然后一起写入或者读取出来. BufferedInputStream:为另一个输入流添加 ...

  3. 字节流VS缓冲流

    ---恢复内容开始--- 字节流VS缓冲流 java.io包中的类大致可以分为:InputStream.OutputStream.Reader.Writer.InputStream/Reader可以理 ...

  4. java中的缓冲流!

    package cn.zhozuohou; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor ...

  5. 01 语言基础+高级:1-8 File类与IO流_day10【缓冲流、转换流、序列化流】

    day10[缓冲流.转换流.序列化流] 主要内容 缓冲流 转换流 序列化流 打印流 教学目标 能够使用字节缓冲流读取数据到程序 能够使用字节缓冲流写出数据到文件 能够明确字符缓冲流的作用和基本用法 能 ...

  6. File类与常用IO流第八章——缓冲流

    第八章.缓冲流 缓冲流概述 缓冲流,也叫高效流,是对4个基本的FileXxx流的增强.按照数据类型分为4类:   输入缓冲流 输出缓冲流 字节缓冲流 BufferedInputStream Buffe ...

  7. java 21 - 6 字符缓冲流的特殊方法以及该方法高效复制文件

    字符缓冲流的特殊方法: A.BufferedWriter: public void newLine():根据系统来决定换行符 private static void write() throws IO ...

  8. Java IO流之【缓冲流和文件流复制文件对比】

    与文件流相比,缓冲流复制文件更快 代码: package Homework; import java.io.BufferedOutputStream; import java.io.File; imp ...

  9. -1-4 java io java流 常用流 分类 File类 文件 字节流 字符流 缓冲流 内存操作流 合并序列流

      File类 •文件和目录路径名的抽象表示形式 构造方法 •public File(String pathname) •public File(String parent,Stringchild) ...

随机推荐

  1. asyncio标准库4 asyncio performance

    性能包括2部分 每秒并发请求数(Number of concurrent requests per second) 每秒请求负载(Request latency in seconds: min/ave ...

  2. oracle_How to Recover Data (Without a Backup!)

    How to Recover Data (Without a Backup!) It's the classic career-limiting maneuver(职业限制机动): accidenta ...

  3. 笨办法学Python(三十九)

    习题 39: 列表的操作 你已经学过了列表.在你学习“while 循环”的时候,你对列表进行过“追加(append)”操作,而且将列表的内容打印了出来.另外你应该还在加分习题里研究过 Python 文 ...

  4. 用python管理Cisco路由器

    目前DevOps是整个运维发展的方向,Network的运维也一样.使用程序控制底层的路由器是最基本的要求之一. 本文简单解释如何用Python控制路由器,对网络设备进行配置. Python和网络设备连 ...

  5. 2.GlusterFS 安装配置

    2.1 GlusterFS 安装前的准备 服务器规划:(vmware 实验) 操作系统 IP 主机名 数据盘(2 块) CentOS 6.8 x86_64 10.1.0.151 mystorage1 ...

  6. mysql修改管理员密码

    mysql修改管理员密码杀掉mysql进程kill `cat /data/mysqldata/3306/mysql.pid`禁止连接禁止验证方式启动mysqlmysqld_safe --default ...

  7. SQA和测试规程

    SQA *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; ...

  8. 西汉姆VS利物浦,铁锤『拳』出击,打回原『菱』形

    一.铁锤,还是铁桶?   铁锤帮西汉姆今晚摆出4-2-3-1对阵红军利物浦的4-3-3 ,阿勒戴斯曾在主场2-1战胜赫尔城时被球迷嘘,嫌他的足球太过丑陋『2010年的时候贝尼特斯也曾经诟病阿勒戴斯带队 ...

  9. 发布Android程序

    这个选项的意思是说,要使用.NET 2.0的完整版本,而非其子集. 下午发布Apk,一直报错,解决好了,忘记选这个了,以前都记得,明天再去公司发布去

  10. Golang 字符串转URLCode

    Golang 字符串转URLCode 最近因调用gitlab API,在生成某些字符串的时候直接请求 gitlab API 失败, url如下: keysURL := "http://192 ...