10.0、Java_IO流 - 字符输入输出流、字符流文件拷贝

news/2025/2/21 4:51:51/

10.0、Java_IO流 - 字符输入输出流、字符流文件拷贝

文件字符流:

        前面介绍的文件字节流可以处理所有的文件,如果我们处理的是文本文件,也可以使用文件字符流,他以字符为单位进行操作;

        字符流和字节流相似,字节流中的 read() 方法是一次读一个字节,而字符流里的 read() 方法一次读一个字符,返回的是当前字符的 Unicode 编码;

示例代码,如下所示 ->

public class FileDemo7 {public static void main(String[] args) throws IOException {FileReader fr = new FileReader("D:/text1.txt");FileWriter fw = new FileWriter("D:/text2.txt");int tmp = 0;//每次读取一个字符while((tmp = fr.read()) != -1) {//输出Unicode编码System.out.println(tmp);//将返回的Unicode编码转为字符输出System.out.println((char)tmp);}//在Windows中\r\n 表示回车换行fw.write("缓缓飘落的枫叶像思念\r\n");fw.write("我点燃烛火温暖岁末的秋天\r\n");fw.write("极光掠夺天边\r\n");fw.write("北风掠过想你的容颜");fw.flush();//如果在这后面重新创建一个字符输出流对象,//然后通过这个对象在 text2.txt 文件中输入内容,新内容则会覆盖掉原来的内容FileWriter fw2 = new FileWriter("D:/text2.txt");fw2.write("内容覆盖");//如果不行覆盖而是追加内容,如下所示 ->FileWriter fw3 = new FileWriter("D:/text2.txt",true);fw3.write("追加内容");fr.close();fw.close();}
}

利用字符缓冲区实现文件拷贝 ↓↓↓

        字符流和字节流一样,也可以利用缓冲区来提高读写效率,只不过字节流中定义的缓冲区是 byte[ ] 数组,并且长度可以通过 availabl() 方法来估计文件的大小自动去设置缓冲区长度;字符缓冲区要用 char[ ] 数组,而且只能自定义长度;不过长度都必须是 2 的整数次幂才可以;

        示例代码,如下所示 ->

public class FileCopyUtil {/*** 利用数据缓冲区来文件拷贝* @param url 源文件 绝对路径* @param dest 目标文件 绝对路径*/public static void fileCopy(String url,String dest) throws IOException {FileReader fr = new FileReader(src);FileWriter fw = new FileWriter(dest);char[] buff = new char[1024];int tmp = 0;//read()返回的是字符的 Unicode 编码//read(char[]) 方法返回的就不是 Unicode 编码了,而是读取字节到缓冲区的长度while((tmp = fr.read(buff)) != -1) {fw.write(buff,0,tmp);}fw.flush();fr.close();fw.close();}
}

http://www.ppmy.cn/news/830304.html

相关文章

如何利用PS将照片的灰色背景变为白色

1. 背景 在实际的应用中,往往存在使用手机或者数码相机拍的照片背景是灰色的或者是浅蓝色的,如图所示,拍出来的照片即使是使用白底做背景照片的背景色也无法使做到真正的白色,这时就可以使用PS软件来处理,将照片的背景…

怎样将蓝底照片换成白底

方法:美图秀秀 java程序。 原来的照片是这样的: 1. 先用美图秀秀将面积较大的蓝底以及边缘比较光滑的部分先刷成白色,或者抠出来都行。 2. 用java程序将边缘部分的蓝色调替换成白色,代码如下: import java.awt.image.…

分享两种证件照换背景方法,轻松把照片底色变白

不管是在上学的时候还是在工作的时候,经常会遇到需要上交照片的情况,在以前还需要上交纸质实体照片,现在很多系统都支持提交电子版证件照了,只需要上传电子版的照片就可以了,但是在不同的情况需要使用的证件照的背景颜色也不一样,那么应该怎样给证件照换背景(https://ww…

怎么把电子版照片换底色?照片换底色最简单的方法

不管是在生活中还是工作中,经常需要使用各种各样的证件照,不同用途的证件照对底色也有不同的要求,怎么自己给电子证件照换底色呢?今天就分享一种证件照一键换底色的方法,使用证件照换背景(证件照换背景 证件…

白色标准照换底色

白色标准照换底色 白色标准照如何换成红蓝底色? 跟住我,一起来吧!祝你好运! 1.首先,选择魔棒工具 2.鼠标左键单击白色背景,得到选区 3.CtrlShiftI,反选把人物拷贝出来 4.CtrlJ,把人物打包 …

小技巧(11):使用PS更换证件照背景颜色(蓝色背景色换成白色背景色)

文章目录 一、打开PS二、打开证件照三、使用快速选择工具四、 替换颜色五、明度值到100六、结果 本文主要记录一下如何使用Photoshop将证件照的背景底色进行修改,从蓝色背景更改为白色背景。 一、打开PS 首先打开软件Photoshop,本文使用的PSCS6版本。 二、打开证件照 使用“…

组合取球-2022年全国青少年信息素养大赛Python国赛第6题

[导读]:超平老师计划推出《全国青少年信息素养大赛Python编程真题解析》50讲,这是超平老师解读Python编程挑战赛真题系列的第8讲。 全国青少年信息素养大赛(原全国青少年电子信息智能创新大赛)是“世界机器人大会青少年机器人设计…

【AI实战】基于 bert-base-chinese 预训练模型的多标签文本分类模型,BCEWithLogLoss解决样本不均衡问题

【AI实战】基于 bert-base-chinese 预训练模型的多标签文本分类模型,BCEWithLogLoss解决样本不均衡问题 多标签文本多分类bert-base-chinese 预训练模型bert-base-chinese模型地址模型拉取样本不均衡问题解决样本不均衡问题方法BCEWithLogLoss解决样本不均衡问题1.对样本数量特…