io流

JavaDay21 IO 流

删除回忆录丶 提交于 2019-11-30 04:38:29
tags: 单例 IO流 JavaDay21 IO 流 @toc 一、 复习 单例: 在整个程序运行的过程中有且只能有一个当前类对象 实现步骤: 1.私有化构造方法 2.提供给类外获取类对象的方法,一个用static修饰的静态方法 pubilc static 类对象类型 方法名(形式参数和类内的构造方法一致) 3.在类内定义一个static修饰的静态成员变量,用于保存之前创建过的类对象地址 4.在提供的静态方法中,进行判断,如果之前并没有这个对象,创建新对象方法, 并且保存地址;如果有,直接返回之前保存的对象地址 5.私有化保存对象地址的static成员变量 public class Single { int num ; private static Single s = null ; private Single ( int num ) { this . num = num ; } public static Single getInstance ( int num ) { if ( null == s ) { s = new Single ( num ) ; } return s ; } } 二、 IO流 Input Output IO的参照物:当前运行程序: 从硬盘中读取数据到内存中供程序使用: input 从程序的内存中将数据保存到硬盘中: output

Java IO流之字节流

流过昼夜 提交于 2019-11-30 03:34:40
一、 IO 流的概念简述 I:Input: 输入(读取) ,把硬盘中的数据读取到内存中使用 O:Output: (输出、写入) ,把内存中的数据,写入到硬盘中保存 流: (字符、字节) ,1字符=2字节,1字节=8个二进制位 字节流:字节输入流:InputStream ,字节输出流:OutputStream 字符流:字符输入流:Reader,字符输出流:Writer 二、字节输出流写入数据到文件 Java.io.FileOutputStream extends OutputStream    FileOutputStream:文件字节输出流     作用:把内存中的数据读到硬盘的文件中    构造方法: FileOutputStream(String name):创建一个向具有指定名称的文件中写入数据的文件输出流        FileOutputStream(File file):创建一个向指定File对象表示的文件中写入数据的文件输出流        参数:写入数据的目的地        String File :目的地是一个文件的路径        File file:目的地是一个文件    构造方法的作用:        创建一个FileOutputStream对象        会根据对象中传递的参数,创建一个空的文件夹       

Java 学习笔记 IO流与File操作

亡梦爱人 提交于 2019-11-30 03:13:50
可能你只想简单的使用,暂时不想了解太多的知识,那么请看这里,了解一下如何读文件,写文件 读文件示例代码 复制 File file = new File("D:\\test\\t.txt"); //这里的有两条斜杠,其实实际的路径为D:\test\t.txt,多的那一条斜杠是转义用的 InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(file), "GBK"); //利用之前的File对象,创建了一个`FileInputStream`对象,之后作为InputStreamReader的构造方法参数传入 //第二个参数是编码,一般使用GBK或者是UTF-8 BufferedReader reader = new BufferedReader(inputStreamReader); //把InputStreamReader作为参数构造一个BufferedReader String s; while((s=reader.readLine())!=null){ System.out.println(s);//循环,将该文件里面的内容全部打印出来 } 写文件示例代码 与上面的类似,解释就不多写啦 复制 File file = new File("Q:\\t.txt");

io流

怎甘沉沦 提交于 2019-11-30 01:09:59
IO流(Input Output): 文件和程序直接项链的我们称为:节点流. 文件和程序之间有两个过程,显然是经过处理,我们称:处理流. 流的分类: 从文件等(数据源)到程序的我们称之为输入流(InputStream,Reader读进来) 从程序到目的地我们称之为输出流(OutPutStream,Writer写出去) 处理数据单元: 字节流:按照字节读取数据 字符流:按照字符读取数据. 功能不同: 1.节点流:可以直接从数据源换货目的地读写数据. 2.处理流(包装流):不直接连接到数据源或目的地,是其他流进行封装,目的主要是简单化操作和提高性能. 什么是IO流: 1.在Java程序中,对于数据的输入输出的操作以“流”(stream)方式进行. 2.J2SDK提供了各种各样的“流”类,用以获取不同种类的数据;程序中通过标准的输入或输出数据. 3.Java的流类型一般位于 http:// Java.io 包中. 流的概念: 数据源:数据从哪来的? 1.data source. 提供原始数据的原始媒介,常见的:数据库,文件,其他程序,内存,网络连接,IO设备. 2.数据源就像水箱,流就像水管中流着的水流,程序就是我们的最终用户,流就是一个抽象,动态的概念,是一连串连续动态的数据集合. 节点流和处理流的关系: 1.节点流处于io操作的第一线,所有操作必须通过他们进行. 2

IO流—File类与递归

你离开我真会死。 提交于 2019-11-29 23:41:08
1.File类 把内存中的数据存储到持久化设备上这个动作称为输出(写) Output 操作 把持久设备上的数据读取到内存中的这个动作称为输入(读) Input 操作。 我们把这种输入和输出动作称为 IO 操作。 Java 中把文件或者目录(文件夹)都封装成 File 对象 。也就是说如果我们要去操作硬盘上的文件,或者文件夹只要找到 File 这个类即可。 File类的构造函数 通过构造方法创建 File 对象: public class FileDemo { public static void main(String[] args) { //File 构造函数演示 String pathName = "e:\\java_code\\day22e\\hello.java"; File f1 = new File(pathName);// 将 Test22 文件封装成 File 对象。注意;有可以封装不存在文件或者文件夹,变成对象。 System. out .println(f1); File f2 = new File("e:\\java_code\\day22e","hello.java"); System. out .println(f2); // 将 parent 封装成 file 对象。 File dir = new File("e:\\java_code\\day22e"

【IO流】学习笔记

十年热恋 提交于 2019-11-29 17:15:48
按流向来分: 输入流:InputStream、Reader 输出流:OutputStream、Writer 按处理单元分: 字节流 :InputStream、OutputStream,按byte处理,能处理所有文件 FileInputStream、FileOutputStream ByteInputStream、ByteOutputStream BufferedInputStream、BufferedOutputStream ObjectInputStream DataInputStream 字符流 :Reader、Writer,按char处理,只能处理 文本文件 CharReader、CharWriter BufferedReader、BufferedWriter 字节流和字符流转换:InputStreamReader、OutputStreamWriter BIO、NIO、AIO BIO 同步阻塞IO: SeverSocket中,在客户端请求时,服务器为每个客户端分配一个线程进行处理。在通信过程中,这个线程只能为 当前的客户端服务。 NIO 同步非阻塞IO: 一个线程能处理多个客户端。 多路复用机制:利用单线程轮询事件,定位就绪Channel 。在查询时是阻塞的,为了避免大量客户端连接导致线程频繁切换。 AIO 异步非阻塞IO 服务器在收到客户端的请求时

Java基础之IO/流

穿精又带淫゛_ 提交于 2019-11-29 16:26:08
Java基础之IO/流 1.字节,字符,缓冲流 字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件 如果想在不关闭时也可以将字符流的内容全部输出,则可以使用Writer类中的flush()方法完成。 字节流是最基本的,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的。但实际中很多的数据是文本,又提出了字符流的概念,它是按虚拟机的encode来处理,也就是要进行字符集的转化。这两个之间通过 InputStreamReader,OutputStreamWriter来关联,实际上是通过byte[]和String来关联。在实际开发中出现的汉字问题实际上都是在字符流和字节流之间转化不统一而造成的 字节缓冲流BufferedInputStream,BufferedOutputStream 在创建 BufferedInputStream时,会创建一个内部缓冲区数组。在读取流中的字节时,可根据需要从包含的输入流再次填充该内部缓冲区,一次填充多个字节。 在使用 BufferedOutputStream 写完数据后,要调用 flush() 方法或 close() 方法,强行将缓冲区中的数据写出。否则可能无法写出数据。与之相似还 BufferedReader 和

Java基础:IO流总结

我的梦境 提交于 2019-11-29 16:22:58
  ------- android培训 、 java培训 、期待与您交流! ---------- IO流在是java中非常重要,也是应用非常频繁的一种技术。初学者要是能把IO技术的学透,java基础也就能更加牢靠。本文是根据以前学习IO的过程中的一些总结,再通过查找资料完善出来的,应该算是比较适合初学者解读的。 一、概念 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输。所以,为了方便更直观的进行数据操作,就根据数据传输特性将流抽象为各种类。 一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。 流的方向是重要的,根据流的方向,流可分为两类:输入流和输出流。用户可以从输入流中读取信息,但不能写它。相反,对输出流,只能往输入流写,而不能读它。 我们可以把形象的比喻成水流 ,文件和程序之间连接一个管道,水流就在之间形成了,自然也就出现了方向:可以流进,也可以流出。 二、流的分类 1.根据从流本身的特点来说,可以分为结点流(nodestream)和过滤流(filters)。 (1)结点流直接从指定的位置(如磁盘文件或内存区域)读或写。(如FileOutputStream和FileInputstream) (2)过滤流输入流往往是以其它输入流作为它的输入源

Java IO流知识点总结

浪子不回头ぞ 提交于 2019-11-29 16:18:44
Java IO流总结 最近对 java IO流进行了比较全面的学习 ,下面对 知识点 进行比较全面的总结: 一. IO流的基本概念 IO流主要用于硬板、内存、键盘等处理设备上得数据操作,根据处理数据的数据类型的不同可以分为: 字节流(抽象基类为InPutStream和OutPutStream)和字符流(抽象基类为Reader和Writer)。 根据流向不同,可以分为:输入流和输出流。 字符流和字节流的主要区别: 1.字节流读取的时候,读到一个字节就返回一个字节; 字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时。 先去查指定的编码表,将查到的字符返回。 2.字节流可以处理所有类型数据,如:图片,MP3,AVI视频文件,而字符流只能处理字符数据。 只要是处理纯文本数据,就要优先考虑使用字符流,除此之外都用字节流。 二. IO流 结构图表示: (一)基类图 (二)字节流相关类图 (三)字符流相关类图 (四) IO流主要可以分为节点流和处理流两大类。 1. 节点流类型 该类型可以从或者向一个特定的地点或者节点读写数据。 2.处理流类型 该类型是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写,处理流的构造方法总是要带一个其他流对象作为参数,一个流对象进过其他流的多次包装,叫做流的链接。 3.IO流的详细分类 注

JAVA基础中的IO流

自古美人都是妖i 提交于 2019-11-29 16:17:49
目录 关键知识点及补充 IO流-节点流 IO流--功能流 例题 File类的使用 复制文件 复制文件夹(文件夹内有文件和文件夹)---利用了拷贝文件类 字符流输入 字符流输出 增强字节流的使用 增强字符流的使用 数据处理流 对象处理流(序列化):ObjectOutputStream 对象处理流(反序列化):ObjectInputStream 数据流: 对象流 : 关键知识点及补充 一定要结合API看 File提供的功能都是操作文件外部的能力,没有办法操作文件内部的内容,要操作内部的东西要用IO流 流是管道,用来连接俩个节点,一个是输入流,向内存中输入东西,一个是输出流,内存将东西输入到磁盘上 节点流包括字节流和字符流 ,用来传输内容 功能流|增强流是依托于节点流 ,用来加强的,提升效率 节点流中的 字节流 是万能流, 可以传递任何数据 ,字符流只可以传递文本 字节流:InputStream,OutputStream 是抽象类只能被继承,运用多态,实际运用他的子类:FileInputStream,FileOutputStream 字符流:Reader,Writer 是抽象类,只能被继承,实际运用它的子类:FileReader,FileWriter 上述俩种都有read()方法,但是基本上都用read(声明);来一段一段读 都有write()方法,但是基本上结合前面说的用write