字节、字符输入输出流
字节和字符输入输出流:
1、字节
输出流:超类OutputStream,对文件的输出流使用子类FileOutputStream,用来写入
输入流:超类InputStrean,对文件的输入流使用子类FileInputStream,用来读取
代码演示:
字节输出流:将文字写入到对应lili.txt文件上
public class Test3 {public static void main(String[] args) {out();}private static void out() {//输入位置File f1 = new File("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt");try {OutputStream out = new FileOutputStream(f1, true);//append 为true表示追加内容//内容写到文件out.write("小河流水哗啦啦".getBytes());// 关闭流out.close();} catch (IOException e) {e.printStackTrace();}}
}
字节输入流:读取lili.txt上的文字:
public class Test3 {public static void main(String[] args) {input();}private static void input() {File f1 = new File("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt");try {InputStream input = new FileInputStream(f1);byte[] bytes = new byte[1024];StringBuilder stringBuilder = new StringBuilder();int len = -1;while ((len = input.read(bytes)) != -1) {stringBuilder.append(new String(bytes, 0, len));}System.out.println(stringBuilder);input.close();} catch (IOException e) {e.printStackTrace();}}
}
1、字符
字符输出流:Writer,对文件的操作使用子类:FileWriter
字符输入流:Reader,对文件的操作使用子类:FileReader
每次操作的都是一个字符,一般用于读取或写入文字
代码演示:
字符输出流:将文字写入到对应lili.txt文件上
public class Test4 {public static void main(String[] args){out();}private static void out(){File f1 = new File("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt");try {Writer out = new FileWriter(f1,true);out.write("我是字符输出流");out.close();} catch (IOException e) {e.printStackTrace();}}
}
字符输入流:读取lili.txt上的文字:
public class Test4 {public static void main(String[] args){input();}private static void input(){File f1 = new File("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\lili.txt");try {Reader input = new FileReader(f1);char[] chars = new char[1];StringBuilder builder = new StringBuilder();int len = -1;while((len = input.read(chars))!=-1){builder.append(new String(chars,0,len));}input.close();System.out.println(builder);} catch (IOException e) {e.printStackTrace();}}
}
案例:复制一张图片到桌面上:
分析:图片传输,我们应该使用字节输入输出流,读取后再输出到桌面上即可
代码实现:
public class Test5 {public static void main(String[] args) {// 将哪里的文件复制到哪里去copy("C:\\Users\\qijingjing\\Pictures\\Saved Pictures\\wife\\m5.jpg", "C:\\Users\\qijingjing\\Desktop\\m5.jpg");}private static void copy(String str, String target) {// 需要被复制的文件File file1 = new File(str);// 复制文件到何地File file2 = new File(target);InputStream in = null;OutputStream out = null;try {// 创建一个输入流in = new FileInputStream(file1);// 创建一个输出流out = new FileOutputStream(file2);byte[] bytes = new byte[1024];int len = -1;while ((len = in.read(bytes)) != -1) {// 输入out.write(bytes, 0, len);}} catch (IOException e) {e.printStackTrace();} finally {if (in != null) {try {// 关闭流in.close();} catch (IOException e) {e.printStackTrace();}}if (out != null) {try {// 关闭流out.close();} catch (IOException e) {e.printStackTrace();}}}}
}
字节、字符输入输出流相关推荐
- File类,字节字符输入输出流,缓冲流,标准流,对象序列化流
一,File文件类 1 File类创建功能: public boolean createNewFiLe():当具有该名称的文件不存在时,创建一个由该抽象路径名命名的新空文件 如果文件 ...
- java管道流文件的复制_JavaIO 总结笔记三 基本字节字符输入输出流和文件复制...
一.IO体系 1.流主要分两大类:字节流 字符流 2.在硬盘上的文件,都是以二进制字节形式存储的,所以不管啥文件,读写时都应该用字节流 3.在java的早期版本中,的确只有字节流,没有字符流 4.一个 ...
- java字节输入与字符输入_Java中的字节输入出流和字符输入输出流
Java中的字节输入出流和字符输入输出流 下面哪个流类属于面向字符的输入流( ) A BufferedWriter B FileInputStream C ObjectInputStream D In ...
- 字节输入输出流,字符输入输出流
IO流按功能分为节点流 处理流 节点流:可以从或向一个特定的地方读写字节数据: 处理流:对一个已经存在的流的连接和封装,通过所封装的流的功能调用实现数据重写. 1.字节输入流InputStream, ...
- Java中的字节输入出流和字符输入输出流
Java中的字节输入出流和字符输入输出流 下面哪个流类属于面向字符的输入流( ) A BufferedWriter B FileInputStream C ObjectInputStream D ...
- java io字符输出流_Java字符输入输出流
Java字符输入输出流 InputStreamReader可以把字节流,以指定的编码转换为字符流. OutputStreamWriter可以把字符流以指定的编码转换为字节流. 这两个类采用了适配器设计 ...
- 唠唠SE的IO-03——字符输入输出流
2019独角兽企业重金招聘Python工程师标准>>> 3. 字符输入输出流 转换流其实是一个字符流 字符流 = 字节流 + 编码表 最基本的字符输入输出流: Reader和Writ ...
- Java I/O流——面向字符输入/输出流(超详细)
目录 前言 字符编码 面向字符输入/输出流类 转换流 转换输入流(InputStreamReader)类 转换输入流(InputStreamReader)类实例 转换输出流(OutputStreamW ...
- JAVA— 字符输入输出流练习
1.向D盘根目录的word.txt文件中写入古诗<春晓>的全文 注意:如果要输入的字节较多的话,建议使用字符输入输出流,(1个字符=2x字节) import java.io.*;publi ...
- 1.6 Java字节流的使用:字节输入/输出流、文件输入/输出流、字节数组输入/输出流
InputStream 是 Java 所有字节输入流类的父类, OutputStream 是 Java 所有字节输出流类的父类, 它们都是一个抽象类,因此继承它们的子类要重新定义父类中的抽象方法. 下 ...
最新文章
- 2015.1.10 解决DataGridView SelectionChanged事件自动触发问题
- 《乐高EV3机器人搭建与编程》——2.2 颜色设计
- 吴恩达第三周逻辑回归
- 数据结构与算法09 之图
- 10个有趣的Python教程,附视频讲解+练手项目。
- Markdown中数学公式整理
- [剑指offer]面试题47:不用加减乘除做加法
- 给刚博士毕业的年轻学者9点建议,最后一条:抓紧结婚,生娃!
- mysql读写分离 同步_MySQL数据库的同步配置+MySql读写分离
- 计算机房档案管理,机房档案资料管理制度
- 软件测试管理是什么?
- CentOS7环境下在/离线安装GCC与GCC-C++
- linux手动注入网络数据_大多数企业网络无法处理大数据负载 | Linux 中国
- 又一股份制银行,菊风「视频能力平台」承包了
- 基础:某个应用的CPU使用率高达100%,该怎么处理
- uniapp(APP)打开高德导航
- C语言候老师,两本留言册背后的C语言老师
- linux多网卡的路由模式和桥接模式设置方法
- 使用Python rembg库进行抠图:一行命令就搞定
- python解析pdf,读取文字,可识别两栏pdf等
热门文章
- 2014-06-30nbsp;19:55
- 【LeetCode】81. Search in Rotated Sorted Array II (2 solutions)
- C#WINFORM控件之ComboBox
- Linux下安装Zookeeper环境
- lambda表达式学习使用实例
- Vue 中的计算属性,方法,监听器
- EasyAndroid基础集成组件库之:EasyPhoto (单张)图片选择库
- 加速与缓存技术之Varnish
- 《AutoCAD 2014中文版超级学习手册》——1.2 操作界面
- Android Weekly Notes Issue #232