JavaIO学习:字节流】的更多相关文章

JavaIO流之字节流 字节流 抽象基类:InputStream,OutputStream. 字节流可以操作任何数据. 注意: 字符流使用的数组是字符数组,char[] chs : 字节流使用的数组是字节数组,byte[] bt : FileOutputStream fos=new FileOutputStream(“a.txt”): fos.write("abcde"); //直接将数据写入到了目的地. fos.close();//只关闭资源. FileInputSteam fls=…
JavaIO前期准备 什么是同步 指的是用户进程触发IO操作并等待或者轮询的去查看IO操作是否就绪 什么是异步 异步是指用户进程触发IO操作以后便开始做自己的事情,而当IO操作已经完成的时候会得到IO完成的通知(异步的特点就是通知) 什么是阻塞 所谓阻塞方式的意思是指, 当试图对该文件描述符进行读写时, 如果当时没有东西可读,或者暂时不可写, 程序就进入等待 状态, 直到有东西可读或者可写为止 什么是非阻塞 非阻塞状态下, 如果没有东西可读, 或者不可写, 读写函数马上返回, 而不会等待 总结…
Java IO 输入输出 一.概念 Java中输入输出操作是以流的方式进行的,流是Java内存中的一组有序数据序列.Java将数据从源(文件.内存.控制台.网络)读入到内存中,形成了流,然后将这些流还可以写到另外的目的地(文件.内存.控制台.网络). 之所以称为流,是因为这个数据序列在不同时刻所操作的是源的不同部分. 二.分类 1.按照输入的方向分,输入流和输出流,输入输出的参照对象是Java程序. 2.按照处理数据的单位不同分,字节流和字符流,字节流读取的最小单位是一个字节(1byte=8bi…
1.IO流概述及其分类 * 1.概念      * IO流用来处理设备之间的数据传输      * Java对数据的操作是通过流的方式      * Java用于操作流的类都在IO包中      * 流按流向分为两种:输入流,输出流.      * 流按操作类型分为两种:          * 字节流 : 字节流可以操作任何数据,因为在计算机中任何数据都是以字节的形式存储的          * 字符流 : 字符流只能操作纯字符数据,比较方便. * 2.IO流常用父类      * 字节流的抽象…
转换流 1.涉及到的类 InputStreamReader:将InputStream转换为Reader OutputStreamWriter:将Writer转换为OutputStream 2.构造器 public OutputStreamWriter(OutputStream out) public OutputSreamWriter(OutputStream out,String charsetName) 3.作用 提供字节流和字符流之间的转换 4.编码表: 常见的编码表: ASCII:美国标…
JavaIO流之字符流 字符流 Reader InputStreamReader FileReader:专门用于处理文件的字符读取流对象. Writer OutputStreamWriter FileWriter:专门用于处理文件的字符写入流对象 Reader中的常见的方法 1. int read(): 读取一个字符.返回的是读到的那个字符.如果读到流的末尾,返回-1. 2. int read(char[]): 将读到的字符存入指定的数组中,返回的是读到的字符个数,也就是往数组里装的元素的个数.…
1.java.io包中的字符流类-BufferedReader和BufferedWriter: BufferedReader:缓存的输入字符流; BufferedWriter:缓存的输出字符流; InputStreamReader:将字节转换成字符的输入流; OutputStreamWriter:将字符转换成字节的输出流; 2.实例-读取字符: import java.io.BufferedReader; import java.io.IOException; import java.io.In…
1.java.io包中的字符流类-FileReader和FileWriter: BufferedReader:缓存的输入字符流; BufferedWriter:缓存的输出字符流; FileReader:从文件中读取内容的输入流; FileWriter:向文件中写入内容的输出流; 注:Buffered缓冲区,它就是一个像水池的东西,往水池里放水,放满后,一次性取走.而不是方一勺取一次,减少了IO读写次数. 2.实例-读写文件: import java.io.BufferedReader; impo…
对象流 1.涉及到的类 ObjectInputStream 和 ObjectOutputStream 用于存储和读取基本数据类型数据或对象的处理流. 2.作用 ObjectOutputStream:内存中的对象 ----->存储中的文件.通过网络传输出去 序列化过程 ObjectInputStream:存储中的文件.通过网络接收过来 ---->内存中的对象反序列化过程 用于存储和读取基本数据类型数据或对象的处理流.可以把Java中的对象写入到数据源中,也能把对象从数据源中还原回来. 3.对象的…
打印流 打印流是输出信息最方便的类,注意包含字节打印流:PrintStream和字符打印流:PrintWriter. 打印流提供了非常方便的打印功能,可以打印任何类型的数据信息,例如:小数,整数,字符串. 回顾: 之前打印信息需要使用OutputStream但是这样,所有数据输出会非常麻烦,String-->byte[],打印流中可以方便进行输出, 打印流好处 通过定义的构造方法可以发现,有一个构造方法可以直接接收OutputStream类的实例,与OutputStream相比起来,PrintS…
缓冲流 1.缓冲流涉及到的类 BufferedInputStream BufferedOutputStream BufferedReader BufferedWriter 2.作用 提升流的读取.写入的速度. 原因:内部提供了一个缓冲区,默认情况下是8192,即8kb. 3.使用BufferedInputStream和BufferedOutputStream 处理非文本文件 //实现文件复制的方法 public void copyFileWithBuffered(String srcPath,S…
Java学习之IO流 学习Io流之前,我们先了解文件,以及在Java中对文件的操作.首先对文件进行操作,就必须用 File F = new File(“d:\\文件名”); 表示该文件或文件夹的地址寻找或者创建(这个语句一般被认为对已经存在的文件用File对象进行绑定,但实际上如果不存在,还会创建,语法是 File F = new File(“文件路径”,”文件名”);这样,就可以完成对文件的创建):无论是对文件的操作还是Io流的使用,第一步必须是这个!以下是对文件的一般操作: 基础操作: 判断…
1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下次程序启动的时候,再把这些数据读出来继续使用呢?其实要把数据持久化存储,就需要把内存中的数据存储到内存以外的其他持久化设备(硬盘.光盘.U盘等 ROM)上. 当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作. 当把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操作. 因此我们把…
初学者觉得复杂是很正常的,归根结底是因为没有理解JavaIO框架的设计思想: 可以沿着这条路想一想: 1,学IO流之前,我们写的程序,都是在内存里自己跟自己玩.比如,你声明个变量,创建个数组,创建个集合,写一个排序算法,模拟一个链表,使用一些常用API,现在回想一下,是不是在只是自己在内存里玩一玩?计算机组成包括运算器,控制器,存储器,输入设备,输出设备.那么你前面的工作,仅仅够你的程序和内存以及CPU打打交道,如果你需要操作外部设备呢?比如键盘,显示器,再比如,最常见的外设:硬盘?甚至未来世界…
转自:http://blog.csdn.net/johnny901114/article/details/8710403 一.BufferWriter类 IO的缓冲区的存在就是为了提高效率,把要操作的数据放进缓冲区,然后一次性把缓冲区的内容写到目的地,而不是写一次就往目的地写一次. 在这里要注意的是当我们关闭了缓冲区对象实际也关闭了与缓冲区关联的流对象. BufferWriter类 try { FileWriter fw =new FileWriter("test.txt"); //使…
1.字节流 1.1.字节输出流output 1.1.1.数据写入文件中 通过api查找output.找到很多,其中java.io.OutputStream,OutputStream: 输出字节流的超类. 基本特点: 1.操作的数据都是字节. 2.定义了输出字节流的基本共性功能. 3.输出流中定义都是写write方法.操作字节数组write(byte[]),操作单个字节write(byte). 子类有规律:所有的子类名称后缀是父类名,前缀名是这个流对象功能. 想要操作文件: FileOutputS…
一,前言 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStreamWriter,这又是什么意思呢 二,转换流 2.1 OutputStreamWriter类 查阅OutputStreamWriter的API介绍,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节.它的作用的就是,将字符串按照指…
Java基础-IO流对象之字节缓冲流(BufferedOutputStream与BufferedInputStream) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在我们学习字节流与字符流的时候,大家都进行过读取文件中数据的操作,读取数据量大的文件时,读取的速度会很慢,很影响我们程序的效率,那么,我想提高速度,怎么办?Java中提高了一套缓冲流,它的存在,可提高IO流的读写速度 缓冲流,根据流的分类分为字节缓冲流与字符缓冲流.本篇博客主要介绍的是字节缓冲流. 一.字节缓冲…
第1章 转换流 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStreamWriter,这又是什么意思呢? 1.1 OutputStreamWriter类 查阅OutputStreamWriter的API介绍,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节.它的作用的就是,将字符串按照指定的…
今日内容介绍 转换流 缓冲流 1 转换流 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStreamWriter,这又是什么意思呢? OutputStreamWriter类 查阅OutputStreamWriter的API介绍,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节.它的作用的就是,…
1. 转换流 在学习字符流(FileReader.FileWriter)的时候,其中说如果需要指定编码和缓冲区大小时,可以在字节流的基础上,构造一个InputStreamReader或者OutputStreamWriter,这又是什么意思呢? 1.1 OutputStreamWriter类 查阅OutputStreamWriter的API介绍,OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的字符编码表,将要写入流中的字符编码成字节.它的作用的就是,将字符串按照指定的编…
缓冲流(高效流) 在我们学习字节流与字符流的时候,大家都进行过读取文件中数据的操作,读取数据量大的文件时,读取的速度会很慢,很影响我们程序的效率,那么,我想提高速度,怎么办? Java中提高了一套缓冲流,它的存在,可提高IO流的读写速度 缓冲流,根据流的分类分类字节缓冲流与字符缓冲流. 字节缓冲流 字节缓冲流根据流的方向,共有2个 l  写入数据到流中,字节缓冲输出流 BufferedOutputStream l  读取流中的数据,字节缓冲输入流 BufferedInputStream 它们的内…
import java.io.* ; public class Copy{ public static void main(String args[]){ if(args.length!=2){ // 判断是否是两个参数 System.out.println("输入的参数不正确.") ; System.out.println("例:java Copy 源文件路径 目标文件路径") ; System.exit(1) ; // 系统退出 } File f1 = new…
Java中的IO流在处理上分为字节流和字符流.字节流和字符流的区别 : 1.字节流读取的时候,读到一个字节就返回一个字节:  字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时.先去查指定的编码表,将查到的字符返回. 2.字节流可以处理所有类型数据,如:图片,MP3,AVI视频文件,而字符流只能处理字符数据.只要是处理纯文本数据,就要优先考虑使用字符流,除此之外都用字节流. 按照流向则分未输入流和输出流. JavaIO流体系可如下表示 : |----流…
JavaIO JavaIO即Java的输入输出系统.比如我们的程序要读取一个文本文件.一张图片或者要获取控制台输入的内容,就要用到输入流:又或者程序要将生成的一段字符窜以文件的形式保存到系统中就要用到输出等等这些操作. 在Java中与输入和输出相关的类都在Java.io包中. Java中IO类的组织结构 如下图: Java IO的类库的框架 Java IO的类库是很庞大的,但是要是理清整体的框架还是可以方便记忆和使用的. 1.从处理的数据类型可以分为: 字节流:InputStream和Outpu…
JavaSE学习笔记(14)---File类和IO流(字节流和字符流) File类 概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. 构造方法 public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例. public File(String parent, String child) :从父路径名字符串和子路径名字符串创建新的 File实例. public File(F…
一 基本知识了解(  字节流, 字符流, byte,bit是啥?) /* java中字节流和字符流之前有接触过,但是一直没有深入的学习和了解. 今天带着几个问题,简单的使用字节流的基本操作. 1 什么是字节流? 字节流是由字节组成的,字符流是由字符组成的.Java里字符由两个字节组成.字节流是最基本的 所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的但实际中很多的数据是文本, 又提出了字符流的概念,它是按虚拟机的encode来处理, 也…
一.缓冲流 1.1.字符流的缓冲区 缓冲区的出现是为了提高IO的读写效率 对应类 BufferedReader BufferedWriter 缓冲区要结合流才可以使用 在流的基础上对流的功能进行了增强 1.2.BufferedReader.BufferedWriter public class BufferedWriterextends Writer 构造方法摘要 BufferedWriter(Writer out) 创建一个使用默认大小输出缓冲区的缓冲字符输出流. BufferedWriter…
package com.lp.ecjtu; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /** * * @author Administrator * 1.用字节读取流对象和图片相关联(输入流) * 2.用字节写入流对象创建一个图片文件.用于存储获取到的图片数据(输出流) * 3.…
字节流和字符流的区别:   直接根据图片得出结论: 结论:   字节流在操作时本身不会用到缓存区,是在文件本身直接操作的,而字符流在操作时使用了缓存区,通过缓存区在操作文件:  所以在操作字符流的时候一定要关闭输出流,如果不关闭输出流,可以使用flush()方法强制清空缓存区,这样也会将缓存区的数据刷到文件中:  …