Java-字符流练习。(新手)
参考手册:


关键字:
write() 写入存取
close() 结束
flush() 刷新缓冲区(缓冲区就是临时存放数据的区域。)
currentTimeMillis() 返回以毫秒为单位的当前时间
创建方法:
FileWriter fwr = new FileWriter("C:\\ja.txt");
创建对象,并且给对象指定路径。
实例:
//导入的包。
import java.io.*;
//创建的一个类。
public class ZFLlx {
//公共静态的主方法。
public static void main(String[] args)throws IOException{
//调用方法。
lx4();
}
public static void lx4(){
FileOutputStream fos = null;
try {
//指定盘符和文件。
fos = new FileOutputStream("C:\\ja.txt");
// 指定盘符内并且设置格式。(OutputStreamWriter字符输出流)
OutputStreamWriter sow = new OutputStreamWriter(fos,"UTF-8");
//添加。
sow.write("您好");
//结束释放资源。
sow.close();
} catch (IOException e) {
e.printStackTrace();
} } private static void lx3() throws IOException {
//指定盘符和文件。
FileWriter fwr = new FileWriter("C:\\ja.txt");
//输入添加的字符串。
fwr.write("Qy97");
fwr.write("威武");
//创建字符数据类型,添加要输入的字符。
char[] c = {'a','b','c','d','e'};
//写入。
fwr.write(c);
//刷新缓冲区(缓冲区就是临时存放数据的区域。)
fwr.flush();
//结束释放资源。
fwr.close();
} private static void lx2() throws IOException {
//计算开始的时间。返回的是以毫秒为单位的时间。(1秒为1000毫秒)
long l = System.currentTimeMillis();
//指定盘符和文件。
FileReader frr = new FileReader("C:\\ja.txt");
// 创建字符数组。char是字符类型,一次读1024个字符
char[] c = new char[1024];
//定义一个变量
int len = 0;
//创建while语句。
while ((len = frr.read(c))!=-1){
System.out.println(new String(c,0,len));
}
//结束释放资源。
frr.close();
//结束时间。
long ll = System.currentTimeMillis();
//结束时间减去开始时间就会得到运行时间。
System.out.println(ll-l);
} public static void lx1() {
FileReader fir = null;
FileWriter fwr = null; try {
fir = new FileReader("C:\\ja.txt");
fwr = new FileWriter("D:\\ja.txt");
char[] c = new char[2024*10];
int len = 0;
while ((len=fir.read(c))!=-1){
fwr.write(c,0,len);
//flush 用来刷新缓冲区的,只有字符流才需要刷新
fwr.flush();
}
} catch (IOException e) {
e.printStackTrace();
}finally {
if (fir!=null){
try {
fir.close();
} catch (IOException e) {
e.printStackTrace();
}finally {
if (fwr!=null){
try {
fwr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
} }
}
执行结果
lx1:

lx2:

lx3:

lx4:

Java-字符流练习。(新手)的更多相关文章
- Java 字符流实现文件读写操作(FileReader-FileWriter)
Java 字符流实现文件读写操作(FileReader-FileWriter) 备注:字符流效率高,但是没有字节流底层 字节流地址:http://pengyan5945.iteye.com/blog/ ...
- java字符流操作flush()方法及其注意事项
java字符流操作flush()方法及其注意事项 flush()方法介绍 查阅文档可以发现,IO流中每一个类都实现了Closeable接口,它们进行资源操作之后都需要执行close()方法将流关闭 ...
- [Java] 字符流 Writer,输出字符数据PrintWriter
package test.stream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.Fi ...
- [Java] 字符流Reader,读取字符数据
package test.stream; import java.io.BufferedReader; import java.io.FileNotFoundException; import jav ...
- Java字符流和字节流对文件操作
记得当初自己刚开始学习Java的时候,对Java的IO流这一块特别不明白,所以写了这篇随笔希望能对刚开始学习Java的人有所帮助,也方便以后自己查询.Java的IO流分为字符流(Reader,Writ ...
- Java 字符流操作
上篇文章Java 字节流操作介绍了java中基本的字节流操作,但是我们常常对于字符操作,如果使用字节流来实现输入输出就显得麻烦,我们可以使用字符流来实现对我们看得见的字符char进行操作,主要内容如下 ...
- Java 字符流文件读写
上篇文章,我们介绍了 Java 的文件字节流框架中的相关内容,而我们本篇文章将着重于文件字符流的相关内容. 首先需要明确一点的是,字节流处理文件的时候是基于字节的,而字符流处理文件则是基于一个个字符为 ...
- Java 字符流与基本IO
字符流基类 java.io包中专门用于字符流处理的类,是以 Reader 和 Writer 为基础派生的一系列类.字符流以字符为单位,根据码表映射字符,一次可能读多个字节,只能处理字符类型的数据.Re ...
- java字符流实现文件间的内容复制
package com.io.demo1; import java.io.FileReader; import java.io.FileWriter; public class TestFileSTr ...
- java 字符流 字节流
java对文本文档进行操作(拷贝.显示)出现乱码一般来说,可以从两个方面入手. 1.文本文件本身的编码格式. 2.java代码中处理文本文件的编码格式. 这里要注意的一点是,我们可以看出copyFil ...
随机推荐
- unittest(8)- 学习ddt
import unittest from ddt import ddt, data, unpack """ 1.正常情况下,测试函数(即测试用例)中不可以传参,如果要使用 ...
- 吴裕雄--天生自然python编程:实例(3)
# 返回 x 在 arr 中的索引,如果不存在返回 -1 def binarySearch (arr, l, r, x): # 基本判断 if r >= l: mid = int(l + (r ...
- MySQL rand(随机数)、floor(保留整数)、char(ASCII 转字符)、concat(字符串连接)
一.MySQL的rand()函数 select rand(); rand()函数,随机0-1之间的数. 二.获得0-10之间的整数(包含0,不包含10) ; 其中floor()去掉小数. 三.获得指定 ...
- pytorch的visdom启动不了、蓝屏
pytorch的visdom启动不了.蓝屏 问题描述:我是在ubuntu16.04上用python3.5安装的visdom.可是启动是蓝屏:在网上找了很久的解决方案:有三篇博文: https://bl ...
- babel-loader的原理
本文转载自默语的博客. Babel包的构成 核心包 babel-core:是babel转译器本身,提供转译的API,例如babel.transform等,webpack的babel-loader就是调 ...
- JXJJOI2018_T1_market
题目描述 某天Lemon去超市买柠檬,他发现货架上有N个柠檬,每个柠檬都有一个重量Wi和价格Ci. Lemon身上只带了S元钱,因此他想要买一个价格不超过S的柠檬回家,另外,他希望他买的那个柠檬的性价 ...
- classnames
在React中编写模板时给标签添加class. 如果是固定的className="XX"就可以了. 如果要根据状态值动态应用或去除, 或使用多个class时就麻烦了. 可以使用cl ...
- redis命令学习(二) · THIS SPACE
列表(Lists)操作命令 Redis列表是简单的字符串列表,按照插入顺序排序. 你可以添加一个元素导列表的头部(左边)或者尾部(右边)LPUSH命令插入一个新的元素导头部,而RPUSH插入一个新元素 ...
- gerrit Q&A
One or more refs/for/ names blocks change upload 原因 这是错误的原因是底层的git仓库有一些不正确的引用,通常是有些开发者使用过程中,直接推送到git ...
- Java入门教程十(抽象类接口内部类匿名类)
抽象类(abstract) 一个类只定义了一个为所有子类共享的一般形式,至于细节则交给每一个子类去实现,这种类没有任何具体的实例,只具有一些抽象的概念,那么这样的类称为抽象类. 在面向对象领域,抽象类 ...