【JAVA】IOStream
前言
IOStream是InputStream和OutputStream的简称,这两个基类下面包含着很多子类,如图(output与input对应):
对于这几个子类的介绍,详情百度百科。
in和out是相对于内存来说的,接下来用一个小例子对它加深理解。
实例
public static void main(String[] args) {File file = new File("G:\\测试.txt");File filenew = new File("G:\\new测试.txt");int size = (int)file.length();byte[] bytes=new byte[size];try {InputStream in = new FileInputStream(file);try {in.read(bytes);} catch (IOException e) {e.printStackTrace();}OutputStream out = new FileOutputStream(filenew);try {out.write(bytes);} catch (IOException e) {e.printStackTrace();}try {in.close();out.close();} catch (IOException e) {e.printStackTrace();}} catch (FileNotFoundException e) {e.printStackTrace();}System.out.print("完成");}
这是一个最简单的IO流复制文件的操作,大概意思就是,本地G盘下有一名为“测试”的txt文件,inputStream将其文件流读入内存中,并新建一空文件“new测试.txt”,使用OutputStream从内容中读出流并输入到该文件中,此时,在本地G盘下会生成“new测试.txt”,内容与“测试.txt”相同。
实际的使用IO流操作大文件时,一般会把他们读出的流放入缓存中,可显著加快读取速度。在此不做演示。
总结
IO流在实际中的使用非常普遍,如上传下载文件,读取、写文件等。
【JAVA】IOStream相关推荐
- java iostream_【JAVA】IOStream
前言 IOStream是InputStream和OutputStream的简称,这两个基类下面包含着很多子类,如图(output与input对应): 对于这几个子类的介绍,详情百度百科. in和out ...
- 【Java】eclipse如何导入项目
[Java]eclipse如何导入项目 1.第一步,打开eclipse,点击file->import 2.第二步,选择general->existing projects into wor ...
- 【Java】Java连接Mysql数据库的demo示例
[Java]Java连接Mysql数据库的demo示例 1.安装mysql数据库 2.下载java-mysql-connector.jar包 3.完成java配置 4.写java代码运行测试 1.安装 ...
- 【Java】泛型中 extends 和 super 的区别?
<? extends T>和<? super T>是Java泛型中的"通配符(Wildcards)"和"边界(Bounds)"的概念. ...
- java反射invoke空指针_【Java】Java 反射 object is not an instance of declaring cla
[Java]Java 反射 object is not an instance of declaring cla [Java]Java 反射 object is not an instance of ...
- synchronized【Java】中使用的demo
synchronized[Java]中使用的demo 没有synchronized的效果: package Action;public class syn {static int count=10;s ...
- 【Java】NIO中Selector的select方法源码分析
该篇博客的有些内容和在之前介绍过了,在这里再次涉及到的就不详细说了,如果有不理解请看[Java]NIO中Channel的注册源码分析, [Java]NIO中Selector的创建源码分析 Select ...
- LeetCode题库整理【Java】—— 3 无重复字符的最长子串
LeetCode题库整理[Java] ## 3 无重复字符的最长子串 题目:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" ...
- LeetCode题库整理【Java】—— 2 两数相加
LeetCode题库整理[Java] 2.两数相加 题目:给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果, ...
- LeetCode题库整理【Java】—— 7整数反转
LeetCode题库整理[Java] 7.整数反转 题目:给出一个32位的有符号整数,你需要将这个这个整数中每位上的数字进行反转. 示例1: 输入: 123 输出: 321 示例2: 输入: -123 ...
最新文章
- 如何解决linux的ssh连接自动断开的问题
- Java 冒泡排序实现及口诀
- 121_Power Query之R.Execute的read.xlsxODBC
- Spring 基础技术点
- 最暖的10个小故事,看完心都融化了
- 这可能是最好的RxJava 2.x 入门教程学习系列
- STM32学习:串口通讯(proteus仿真)
- 【NOIP2014模拟8.25】设备塔
- Azure Active Directory中的特权身份管理如何运作?
- 在线Excel转XML工具
- mate30pro鸿蒙系统刷机包下载,华为 Mate 30 Pro 的鸿蒙 2.0 Beta 版刷机包流出(附下载地址)...
- VS2015: 无法打开包括文件: “QSerialPort”: No such file or directory
- lammps自带命令create_atoms实现水分子建模
- Java 流(Stream)、文件(File)和IO
- txt电子书如何用安卓手机完美打开?
- 软件开发流程有哪些?完整的软件开发流程
- 成都拓嘉启远:多多进宝如何关
- 关于此博客更名和改版的说明
- python批量分割音频-无bug完美运行
- 网络服务器 用到的技术