IO 流之字节流和转换流】的更多相关文章

基本读取操作: InputStream(); OutputStream(); // 直接写入目的地中, 不需要 flush() 刷新 write(byte[] b); // 参数为 byte 数组 字符流不能操作媒体文件, 因为字符流读入文件后, 需要对照编码表. 如果编码表中没有对应的数据, 这时, 码表会用一些未知字符区的编码替代,最终,会发生错误. // 示例一: 写入数据 // 1. 创建字节输出流对象, 用于操作文件 FileOutputStream fos = new FileOut…
JAVA之旅(二十七)--字节流的缓冲区,拷贝mp3,自定义字节流缓冲区,读取键盘录入,转换流InputStreamReader,写入转换流,流操作的规律 我们继续来聊聊I/O 一.字节流的缓冲区 这个,和我们的字符流基本上没有什么差别,我们来拷贝mp3,看例子 // 通过字节流的缓冲区拷贝图片 public static void copyMp3() { try { FileInputStream fi = new FileInputStream("audio.mp3"); Buff…
1. 流的概念 流(stream)的概念源于UNIX中管道(pipe)的概念.在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备.外部文件等. 一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL. 流的方向是重要的,根据流的方向,流可分为两类:输入流和输出流.用户可以从输入流中读取信息,但不能写它.相反,对输出流,只能往输入流写,而不能读它. 实际上,流的源端和目的端可简单地看成是字节的生产者和消费…
1. OutputStreamWriter的使用 OutputStreamWriter(OutputStream out):根据默认编码把字节流的数据转换为字符流 OutputStreamWriter(OutputStream out,String charsetName):根据指定编码把字节流数据转换为字符流 把字节流转换为字符流. 字符流 = 字节流 +编码表. 2. 代码示例: package cn.itcast_02; import java.io.FileOutputStream; i…
1.处理流之二:转换流 InputStreamReader和OutputStreamWriter 2.当作用的文件就是一个文本文件且使用字节流传输时,需要把它转换成字符流,再在外面加上缓冲流以加速传输,比如:从键盘输入System.in默认是字节流,此时就可以考虑把字节流转换成字符流,效率更高. 3.转换流提供了在字节流和字符流之间转换 4.当字节流中都是字符时转换成字符流操作更高效 编码:字符串-->字符数组 解码:字符数组-->字符串 注:解码和编码时要使用同种编码方式,当文件中含有中文.…
JavaSE学习笔记(14)---File类和IO流(字节流和字符流) File类 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 构造方法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例. public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例. public File(F…
转换流的使用 1.转换流涉及到的类:属于字符流InputStreamReader:将一个字节的输入流转换为字符的输入流解码:字节.字节数组 --->字符数组.字符串 OutputStreamWriter:将一个字符的输出流转换为字节的输出流编码:字符数组.字符串 ---> 字节.字节数组 说明:编码决定了解码的方式 2.作用:提供字节流与字符流之间的转换 3.图示: 4.典型实现: @Test public void test1() throws IOException { FileInput…
Java中使用流来处理程序的输入和输出操作,流是一个抽象的概念,封装了程序数据于输入输出设备交换的底层细节.JavaIO中又将流分为字节流和字符流,字节流主要用于处理诸如图像,音频视频等二进制格式数据,而字符流主要用于处理文本字符等类型的输入输出. 流是一个抽象的概念.当Java程序需要从数据源读取数据时,会开启一个到数据源的流.数据源可以是文件,内存或者网络等.同样,当程序需要输出数据到目的地时也一样会开启一个流,数据目的地也可以是文件.内存或者网络等.流的创建是为了更方便地处理数据的输入输出…
一.流的基本概念 在java.io包中,File类是唯一一个与文件本身有关的程序处理类,但是File类只能操作文件本身,而不能操作文件内容,IO操作的核心意义在于输入和输出操作.而对于程序而言,输入和输出可能来自不同的环境:--通过电脑连接服务器上进行浏览的时候,实际上此时客户端发出了一个信息,服务器接收到此信息后作出了回应处理,在整个程序之中,对于服务器以及客服端来说,传递的实质上就是一种数据流的处理形式,而所谓的数据流指的就是字节数据.--而对于这类流的处理形式,在java.io包中提供有两…
因为工作事宜,又有一段时间没有写博客了,趁着今天不是很忙开始IO之路:IO往往是我们忽略但是却又非常重要的部分,在这个讲究人机交互体验的年代,IO问题渐渐成了核心问题. 一.File类 在讲解File类之前,我们先认识和了解一下流的概念:流的概念可能比较抽象,可以想象一下水流的样子. 1.流 IO在本质上是单个字节的移动,而流可以说是字节移动的载体和方式,它不停的向目标处移动数据,我们要做的就是根据流的方向从流中读取数据或者向流中写入数据. 想象下倒水的场景:倒一杯水,水是连成一片往地上流动,而…