FileOutputStream、FileInputStream的使用

  FileOutputStream是OutputStream的继承类,它的主要功能就是向磁盘上写文件。FileOutputStream类中的write方法会把字节一个一个的写入磁盘中。

  以下是使用FileOutputStream输出流将数据写入到指定的文件中,在构建FileOutputStream输出流对象的过程中,如果指定的文件不存在,那么就创建该文件。

package com.tianjh.io.outputstream;

import java.io.FileOutputStream;
import java.io.IOException; /**
* Created on 2020/12/9
* 向磁盘上指定文件文件写入数据
* $FileOutputStreamDemo用法
*
*/
public class FileOutputStreamDemo {
public static void main(String[] args) {
FileOutputStream fileOutputStream;
try {
// 构建FileOutputStream对象,"D:/one.txt"文件不存在会自动新建
fileOutputStream = new FileOutputStream("D:/one.txt");
// write方法会把字节一个一个的写入磁盘中 write方法支持byte、int基本类型
byte aa = 97;
fileOutputStream.write(aa); int bb = 98;
fileOutputStream.write(bb); char cc = 'c';
// 没有write(char),只能机器自动从char转到int
fileOutputStream.write(cc); // String dd = "100";
// fileOutputStream.write(dd);
// fileOutputStream.write(dd)会报错, 因为FileOutputStream流中没有write(String)方法,
// 不过在PrintStream中有write(String)方法
} catch (IOException e) {
e.printStackTrace();
}
}
}

执行之后得到如下文件:

  FileInputStream是IntputStream的继承类,它的主要功能就是向磁盘上读文件。FileInputStream类的read方法会一个一个字节的从磁盘往回读数据。下列是通过FileInputStream文件输入流读取指定文件 "D:/hello.txt"中的数据。

package com.tianjh.io.inputstream;

import java.io.*;

/**
* Created on 2020/12/9
* 从磁盘上读入文件,并输出到控制台
* $FileInputStreamDemo用法
*
*/
public class FileInputStreamDemo {
public static void main(String[] args) {
FileInputStream fileInputStream;
int size;
try {
// 使用字符串类型的文件名创建一个文件输入流对象来读取文件
fileInputStream = new FileInputStream("D:/hello.txt");
// available() 返回从此输入流中可以读取(或跳过)的剩余字节数的估计值,而
// 不会被下一次调用此输入流的方法阻塞。
size = fileInputStream.available();
for (int i = 0; i < size; i++) {
System.out.print((char) fileInputStream.read());
// expected output: hello world!
}
} catch (IOException e) {
e.printStackTrace();
}
}
}

hello.txt 文件内容如下:

控制台输出的结果为:

  hello world!

最新文章

  1. Robot Framework--08 List Variables-List变量及其用法
  2. ODI 12.1.3创建standalone代理
  3. 分享一个jquery写的类似于百度的搜索框,(可动态配置,可单列或者table格式,可填充数据)
  4. Spring MVC 中 HandlerInterceptorAdapter的使用--转载
  5. struts2中constant参数设置
  6. POJ3267 The Cow Lexicon(dp)
  7. read op case $op in
  8. 宝更容易使用比读IC卡信息的工具
  9. sql语句操作表
  10. 新手引导-ugui
  11. (其他)Thinkpad笔记本装系统
  12. asp.net core 自定义401和异常显示内容(JWT认证、Cookie Base认证失败显示内容)
  13. HTML 5 视频/音频
  14. JS对象复制(深拷贝、浅拷贝)
  15. 查询当前Oracle数据库的实例
  16. C#日志记录设计与实现(BenXHLog)
  17. OC MRC之计数器的基本操作(代码分析)
  18. GUC-6 Callable 接口
  19. App压力测试MonkeyRunner整理
  20. python-pycharm控制台输出带颜色

热门文章

  1. Java(6)集合
  2. MYSQL渗透测试
  3. 查看php扩展
  4. 精益求精!Spring Boot 知识点全面回顾,带你重新细读源码!
  5. 面试半年,凭借这份JVM面试题,我终于拿到了字节跳动的offer!
  6. C语言讲义——字符串库函数
  7. 企业安全06-Fastjson-CNVD-2017-02833
  8. python应用(6):函数
  9. Event Loop - 事件队列
  10. dubbo源码学习(一)dubbo容器启动流程简略分析