java IO流 之 字节流与字符流
其实学习了file文件基础类,后面的字节流和字符流都特别简单了,首先需要知道字节流和字符流的区别
字节流:
用来传送图片、各种文件、大文件、文本都是通过字节流进行传输的。
字符流:
只能读取文本信息
字节流操作接口类
1、InputStream 字节输入流
2、outputStream 字节输出流
3、FileinputStream 实例化字节输入流
4、FileoutputStream 实例化字节输出流
5、BufferedInputStream 加强版输入流,用于大文件传输时输入缓存
6、BufferedOutputStream 加强版输出流,用于大文件传输时输出缓存
/**
* 文件copy 加强版(用的最多的) 几个G的文件也就10几秒
*
* @param file 传入文件的路径
* @return
*/
public static boolean Read(File file) { // File file = new File("D:\\1.txt"); if (file == null || file.isFile()) {
System.err.println("文件不能为空");
return false;
} BufferedOutputStream bos = null;
BufferedInputStream bis = null;
try {
bis = new BufferedInputStream(new FileInputStream(file)); // 获取文件流
bos = new BufferedOutputStream(
new FileOutputStream("D:\\video\\AdminVideo\\PrivateVideo\\" + file.getName())); // 转存为... int len = 0;
byte[] b = new byte[1024000];
while (-1 < (len = bis.read(b))) {
bos.write(b, 0, len);
}
bos.flush();
System.err.println("D:\\video\\AdminVideo\\PrivateVideo\\" + file.getName());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
bos.close();
bis.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return false;
} /**
* 字符流 循环读取文本
* @throws IOException
*/
public static void file2() throws IOException {
// 定义文件路径
File f = new File("d:" + File.pathSeparator + "test.txt");
// 定义字符输出流
Reader reader = new FileReader(f);
int len = 0;
char[] c = new char[1024];
int temp = 0;
// 通过循环方式读取文件中的字符
while ((temp = reader.read()) != -1) {
c[len] = (char) temp;
len++;
}
// 关闭字符流,不然会报错
reader.close();
System.out.println("内容为:" + new String(c, 0, len));
}
实例非常简单,希望对你的学习有所帮助。又不懂得可以在评论区留言,我会尽快给您回复的
java IO流 之 字节流与字符流的更多相关文章
- java IO(五):字节流、字符流的选择规律
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- java 笔记(4) —— java I/O 流、字节流、字符流
Java中使用流来处理程序的输入和输出操作,流是一个抽象的概念,封装了程序数据于输入输出设备交换的底层细节.JavaIO中又将流分为字节流和字符流,字节流主要用于处理诸如图像,音频视频等二进制格式数据 ...
- JavaSE学习笔记(14)---File类和IO流(字节流和字符流)
JavaSE学习笔记(14)---File类和IO流(字节流和字符流) File类 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 构造方 ...
- Java IO(十二) 字符流 Writer 和 Reader
Java IO(十二) 字符流 Reader和 Writer 一.介绍 涉及到文件(如果是纯文本文件形式)操作时,Java除了提供 FIle(文件和目录路径名的抽象表示形式) 和 FileDescri ...
- javaIO流(二)--字节流与字符流
一.流的基本概念 在java.io包中,File类是唯一一个与文件本身有关的程序处理类,但是File类只能操作文件本身,而不能操作文件内容,IO操作的核心意义在于输入和输出操作.而对于程序而言,输入和 ...
- Java笔记(二十六)……IO流上 字节流与字符流
概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 ...
- 【Java IO流】字节流和字符流详解
字节流和字符流 对于文件必然有读和写的操作,读和写就对应了输入和输出流,流又分成字节和字符流. 1.从对文件的操作来讲,有读和写的操作——也就是输入和输出. 2.从流的流向来讲,有输入和输出之分. 3 ...
- 【java】io流之字节流转为字符流:java.io.OutputStreamWriter和java.io.InputStreamReader
package 文件操作; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; impo ...
- Java基础:IO流之字节流和字符流
1. 流的概念 流(stream)的概念源于UNIX中管道(pipe)的概念.在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备.外部文件等. 一个流,必有源端和目的端 ...
- java的IO流,字节流和字符流
java操作文件都是通过流来处理的,(其实其他很多语言也是这样) 第一:java的IO流,分为:输入流 和 输出流(这真是废话,这是从流向的角度来说的) 第二:java的所有IO流,只分为:字节流 和 ...
随机推荐
- 记录一个不同的流媒体网站实现方法,和用Python爬虫爬它的坑
今天找到一片电影,想把它下载下来. 先开Networks工具分析一下: 初步分析发现,视频加载时会拉取TS格式的文件,推测这是一个m3u8的索引,记录着几百段TS文件,这样方便快进时加载. 但是实际分 ...
- iOS hash
一.iOS hash 下图列出 Hash 在 iOS 中的应用分析整理 知乎上的一句话: 算法.数据结构.通信协议.文件系统.驱动等,虽然自己不写那些东西,但是了解其原理对于排错.优化自己的代码有很大 ...
- [POI2014][树形DP]FarmCraft
题目 In a village called Byteville, there are houses connected with N-1 roads. For each pair of houses ...
- jQuery数组去重复
例如: var yearArray = new Array("三二一", "三二一", "学历", "学历", &quo ...
- ANTLR随笔(三)
ANTLR基本语法 前面已经简单介绍了ANTLR以及怎么安装和测试. 同学们应该大概清楚ANTLR的使用场景,但是对于关键步骤,怎么编写一个语法文件并没有详细介绍,这篇笔记主要详细讲解一下ANTLR的 ...
- 1062 Talent and Virtue (25分)(水)
About 900 years ago, a Chinese philosopher Sima Guang wrote a history book in which he talked about ...
- Unity 游戏框架搭建 2019 (二十六) 第一轮整理完结
昨天呢我们把第八个示例整理完了.整理之后学习了类的第一作用:方法的集合,还有 Obselete 这个 API.并且在进行整理的时候贯彻了我们新的约定和规则:先确保功能有效,再去做变更和删除. 今天我们 ...
- DALI开关
DALI开关简介 一:符合协议IEC 62386 二:DALI总线取电,低压操作,安全可靠 三:可以开,关,调光,调色温 四:DALI总线取电,低压操作,安全可靠 五:可按压开,关,旋转调光,调光器耐 ...
- JDBCUtils,根据当前MySQL数据库下面的表生成java实体类
自己简单写的JDBCUtils,可以根据当前数据库下面的表生成java实体类,代码萌新,请多多包涵. 初始化配置: //驱动程序名//不固定,根据驱动 static String driver = & ...
- 部署mysql主从同步
mysql-day06 部署mysql主从同步 案例拓扑 • 一主.一从 – 单向复制时,建议将 ...