Java IO流 FileOutputStream、FileInputStream的用法
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 world!
Java IO流 FileOutputStream、FileInputStream的用法 的更多相关文章
- Java IO流 FileOutputStream、FileInputStream的用法
FileOutputStream.FileInputStream的使用 FileOutputStream是OutputStream的继承类,它的主要功能就是向磁盘上写文件.FileOutputStre ...
- java Io流中FileInputStream和BufferedInputStream的速度比较
首先是对FileInputStream 加上 FileOutputStream 对文件拷贝的应用 我这里拷贝的是一个视频.当然,你们拷贝什么都可以,当文件越大时效果越明显 下面是对BufferedIn ...
- 【Java基础】Java IO流的总结
Java IO流分为输入流和输出流,而输入流和输出流中又分字符流和字节流.顾名思义,输入流则是输入到程序中计算,输出流是把程序的结果输出到文件或者设备.而字符流输入输出以字符为单位,字节流则是以字节为 ...
- Java:IO流与文件基础
Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ...
- java IO流详解
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- Java IO流学习总结
Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- Java IO流题库
一. 填空题 Java IO流可以分为 节点流 和处理流两大类,其中前者处于IO操作的第一线,所有操作必须通过他们进行. 输入流的唯一目的是提供通往数据的通道,程序可以通过这个通道读取数 ...
- Java IO流总结
Java IO流分类以及主要使用方式如下: IO流 |--字节流 |--字节输入流 InputStream: int read();//一次读取一个字节 int read(byte[] bys);// ...
- java io流(字节流)复制文件
java io流(字节流) 复制文件 //复制文件 //使用字节流 //复制文本文件用字符流,复制其它格式文件用字节流 import java.io.*; public class Index{ pu ...
随机推荐
- Happy Tree Friends——团队展示
这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 团队名称 Happy Tree Friends 这个作业要求在哪里 团队作业第一次 这个作业的目标 团队合作 作业正文 正文 其 ...
- lcm的和(莫比乌斯反演)
马上开学了,加一个操作系统和数据库标签 不玩了,求1-n和1-m的lcm(i,j)和 首先想到把lcm(i,j)转化为i * j / gcd(i, j) 然后gcd,要素察觉,开始枚举d使得gcd(i ...
- Struts2中的开启AsyncContext的方法
//获取到requestHttpServletRequest req = ServletActionContext.getRequest();//设置属性org.apache.catalina.ASY ...
- Python怎么控制将一个整数输出成指定长的十六进制数?
使用format方法,在格式控制中进行控制,具体控制参数为: {:#016X} 其中: 大括号表示该处从后面的format的参数中取值 冒号表示格式控制开始 0表示长度不足16位补0 16表示长度 X ...
- PyQt(Python+Qt)学习随笔:复选框checkBox的tristate属性
在Qt Designer中,tristate属性是复选框checkBox相比较于QAbstractButton多出来的唯一属性. tristate属性表示复选框是三种状态还是两种状态,如果trista ...
- django 自定义存储上传文件的文件名
一.需求: Django实现自定义文件名存储文件 使文件名看起来统一 避免收到中文文件导致传输.存储等问题 相同的文件也需要使用不同的文件名 二.实现思路: 思路: 生成14位随机字母加数字.后10位 ...
- sql bool盲注
[CISCN2019 总决赛 Day2 Web1]Easyweb 考察: robots.txt image.php?bak文件泄露,image.php.bak可以下载别的不大行 盲注 php日志挂马 ...
- Xmind Invalid Configuarton Location(the configuarton area is not writable)
今天在安装Xmind的时候,发现如下错误,原因:配置问题 步骤如下: 1.找到XMind安装目录下的文件XMind.ini2.文件中的内容替换:将:-configuration./configurat ...
- DVWA SQL Injection High
High 虽然是high等级,但是通过源码审计发现与low等级一样,没有对传入的值做任何过滤,唯一不同的就是点击连接后打开了另外一个对话框,用户在新打开的页面输入 其余的步骤与low级别的一样:htt ...
- CentOS 用户请关注,你期待的 CentOS Linux 9 再也不会来了
2020年12月晚上红帽官网发布了一条公告,宣布了几件事情: 将不会发行 CentOS Linux 9 CentOS Linux 8 的更新支持持续到2021年12月31日 CentOS Linux ...