IO和流】的更多相关文章

Java Io 字符流包含: 1. InputStreamReader  它是由byte流解析为char流,并且按照给定的编码解析. 2. OutputStreamWrite  它是char流到byte流的转换,并且按照给定的编码处理. 事例代码如下: package com.dcz.io; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.In…
Java IO 嵌套流.文本的输入输出和存储 @author ixenos 1.   组合流过滤器(嵌套流) a)    跨平台文件分割符:常量字符串 java.io.File.seperator 等效于windows”/” b)    通过嵌套流过滤器来添加多重功能 i. 首先要知道,基于装饰模式设计,过滤流的各个方法通常会递归调用基类的方法,如read.write.close.flush这些,因此流的嵌套顺序对于缓冲功能无影响,(只是对于直接输出格式的功能有影响) ii. DataInput…
Java IO 转换流 字节转字符流 @author ixenos 字节流 输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| FileInputStream 读取文件的输入字节流.------------| BufferedInputStream 缓冲输入字节流. 该类内部其实就是维护了一个8kb(8192b)字节数组而已. 该类出现的目的是为了提高读取文件数据的效率. 输出字节流:---------| OutputStream…
Java IO 过滤流 BufferedInput/OutputStream @author ixenos 概念 BufferedInput/OutputStream是实现缓存的过滤流,他们分别是FilterInput/OutputStream的子类. BufferedInputStream工作流程 stream-->buf--read buf-->I 1.当一个BufferedInputStream被创建时,一个内部的缓冲区 byte[] buf = new byte[size] 也被建立,…
Java IO 节点流 FileInput/OutputStream @author ixenos 节点流之 文件流 文件读写是最常见的I/O操作,通过文件流来连接磁盘文件,读写文件内容 1.文件的读写工作流程: 1)打开文件输入流或输出流 FileInputStream实现读文件,调用FileInputStream的构造器可以打开一个文件输入流: 1 public FileInputStream(String fileName) throws FileNotFoundException //指…
Java IO 理解流的概念 @author ixenos 在理解流时首先理解以下概念 1.流的来源和去向一般在构造器指出 2.方法中的形参一般是将流输出到某个位置,读取(INPUT)流从流读出数据(来自流)送到位置上,输出(OUTPUT)流将所要输出的数据(来自我)送到位置上 3.缓冲流就是,读取流从预设的缓冲区(其中缓冲着所需的数据)读取数据,输出流输出数据到预设缓冲区再一次性刷出去…
Java IO 节点流 ByteArrayInput/OutputStream @author ixenos ByteArrayInputStream 包含一个内部缓冲区(字节数组byte[]),该缓冲区包含从流中读取的字节. 关闭 ByteArrayInputStream 无效.此类中的方法在关闭此流后仍可被调用,而不会产生任何 IOException.  #Constructors ByteArrayInputStream(byte[] buf) //使用创建者预设的buf作为其缓冲区数组,…
package TestIo; import java.io.*; /** * 转换流 */ public class TestConvertStream { public static void main(String[] args) { // 创建字符输入和输出流:使用转换流将字节流转换成字符流 // 字节 => 字符 BufferedReader br = null; BufferedWriter bw = null; try { /*** * 将字节流转换为字符流 */ // 输入流 (…
目录 IO缓冲流 缓冲流 基本原理 字节缓冲流 字符缓冲流 IO缓冲流 缓冲流也叫高效流,能够更高效的进行读取: 转换流:能够进行编码转换 序列化流:持久化存储对象 缓冲流 缓冲流--就是对应4个File**** 流的增强流 字节缓冲流:BufferedInputStream,BufferedOutputStream 字符缓冲流:BufferedReader,BufferedWriter 基本原理 缓冲流在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区的读写,减少系统IO次数,从…
IO 内存流和打印流操作 字符编码 计算机中所有的信息组成都是二进制数据,所有能够描述的中文文字都是经过处理后的结果:所有的语言文字都会使用编码来进行描述,例如:ASCII码 常见编码 GBK/GB2312: 中文的国标编码 GBK包含有简体中文与繁体中文两种,而GB2312只包含简体中文 ISO-8859-1: 国际编码 可以描述任何的文字信息 UNICODE: 十六进制编码 任何文字信息都用十六进制表示,会导致无用数据过多 UTF-8:* 融合ISO8859-1和UNICODE两种编码的特点…
作者: Jakob Jenkov  译者: 李璟(jlee381344197@gmail.com) 本章节将简要介绍缓冲与过滤相关的reader和writer,主要涉及BufferedReader.BufferedWriter.FilterReader.FilterWriter. BufferedReader 原文链接 BufferedReader能为字符输入流提供缓冲区,可以提高许多IO处理的速度.你可以一次读取一大块的数据,而不需要每次从网络或者磁盘中一次读取一个字节.特别是在访问大量磁盘数…
作者: Jakob Jenkov 译者: 李璟(jlee381344197@gmail.com) 本章节将简要介绍管道与字符数组相关的reader和writer,主要涉及PipedReader.PipedWriter.CharArrayReader.CharArrayWriter. PipedReader 原文链接 PipedReader能够从管道中读取字符流.与PipedInputStream类似,不同的是PipedReader读取的是字符而非字节.换句话说,PipedReader用于读取管道…
I/O和流 I/O是Input和Output的缩写 从读写设备,包括硬盘文件,内存,键盘输入,屏幕输出,网路 输入输出"内容"(字节或文本) 流是对输入输出设备的一种抽象 从流中读取内容,输出内容到流中 "Linux中一切都是文件" 从程序的角度,就是对读写设备进行封装,比如:创建一个对象,然后调用方法读取(输出)内容,然后对象会更新当前文件的位置 标准输出流 System.out; System.out.println(...); 标准输入流 System.in…
  问题: (1)JAVA的IO流使用了装饰模式,关闭最外面的流的时候会自动调用被包装的流的close()方吗? (2)如果按顺序关闭流,是从内层流到外层流关闭还是从外层到内存关闭? 问题(1)解释: 如下例子代码: FileInputStream is = new FileInputStream("."); BufferedInputStream bis = new BufferedInputStream(is); bis.close(); 从设计模式上看: java.io.Buff…
package com.io; import java.io.*; /** * 文件字符流的读取 * @author ganhang * */ public class FileReaderDemo { public static void read(){ File file =new File("1.txt"); try { FileReader fr=new FileReader(file); StringBuffer sb=new StringBuffer(); char []…
直接上码:   读取键盘录入数据代码演示:   import java.io.IOException; import java.io.InputStream; /** *读取键盘录入的数据,并打印在控制台上. * *键盘本身就是一个标准的输入设备, *对于Java而言, */ public class ReadKey { /** * @param args * @throws IOException */ public static void main(String[] args) throws…
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt381 问题: (1)JAVA的IO流使用了装饰模式,关闭最外面的流的时候会自动调用被包装的流的close()方吗? (2)如果按顺序关闭流,是从内层流到外层流关闭还是从外层到内存关闭? 问题(1)解释: 如下例子代码: 1 2 3   FileInputStream is = new FileInputStream(".");      BufferedInput…
JAVA IO操作总结:节点流和处理流 JAVA IO操作总结--节点流和处理流  按照流是否直接与特定的地方(如磁盘.内存.设备等)相连,分为节点流和处理流两类. 节点流:可以从或向一个特定的地方(节点)读写数据.如FileReader 处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写.如BufferedReader.处理流的构造方法总是要带一个其他的流对象做参数.一个流对象经过其他流的多次包装,称为流的链接. 常用的节点流 父 类 InputStream Outp…
  File类 •文件和目录路径名的抽象表示形式 构造方法 •public File(String pathname) •public File(String parent,Stringchild) •public File(File parent,Stringchild) 创建功能 •publicboolean createNewFile() •publicboolean mkdir() •publicboolean mkdirs() 删除功能 •publicbooleandelete() 重…
1. 转换流 1.1 OutputStreamWriter类-字符流通向字节流的桥梁,可使用指定的字符编码表,将要写入流中的字符编码成字节. 1.2 InputStreamReader类-字节流通向字符流的桥梁,可使用指定的字符编码表读取字节并将其解码为字符 (1)读取指定的编码的文件时,一定要指定编码格式,否则就会发生解码错误,而发生乱码现象 1.3 转换流和子类区别 (1)继承关系: OutputStreamWriter: |-FileWriter InputStreamReader: |-…
定义:流是一种抽象的概念,通过流的方式组成无结构字符和字符序列,从流中取数据的操作进行输入输出.[io流的作用就是用流的方式进行输入输出] 常用语法: 1.   首先引用using.system.io 2.   基础常用: 3.   File.readalltext(引用本地文件) 4.   File.wridtealltext(输出到本地文件) Filesteeam类定义和区别: 定义: Filesteam:输入/输出文件,可以通过信息管道来控制字节长度.减少内存的消耗,提高效率. 区别: F…
多态 多态性是指对不同类的对象发出相同的消息将返回不同的行为,消息主要是指类的成员函数的调用,不同的行为是指不同的实现: 函数重载 函数重载是多态性的一种简单形式,它是指允许在相同的作用域内,相同的函数名对应着不同的实现: 函数重载的条件是要求函数参数的类型或个数有所不同.对成员函数的重载有以下的三种表达方式 在一个类中重载 在不同类中重载 基类的成员函数在派生类里面重载: 另外,如果是继承类中,子类与父类的成员函数同名的情况称为重定义: 当我们想要指定哪个类的成员函数需要指定是哪个类,使用格式…
输入输出(I/O)是指程序与外部设备或其他计算机进行交互的操作.几乎所有的程序都具有输入与输出操作,如从键盘上读取数据,从本地或网络上的文件读取数据或写入数据等.通过输入和输出操作可以从外界接收信息,或者是把信息传递给外界.Java把这些输入与输出操作用流来实现,通过统一的接口来表示,从而使程序设计更为简单. Java流的概念 流(Stream)是指在计算机的输入输出操作中各部件之间的数据流动.按照数据的传输方向,流可分为输入流与输出流.Java语言里的流序列中的数据既可以是未经加工的原始二进制…
字符流:只能操作文本文件,与字节流的区别是,字节流是按照字节来读取文件,而字符流是按照字符来读取,因此字符流的局限性为文本文件 字符输出流:Write类,使用时通过子类   每一次写入都要刷新 package com.zs; import java.io.FileWriter; import java.io.IOException; public class Demo3 { public static void main(String[] args) throws IOException { F…
IO类: iostream 定义了用于读写流的基本类型,fstream 定义了读写命名文件的类型,sstream 定义了读写内存 string 对象的类型. IO 库类型和头文件: 头文件 类型 iostream    istream,wistream 从流读取数据   ostream,wostream 向流写入数据   iostream,wiostream 读写流 fstream      ifstream,wifstream 从文件读取数据   ofstream,wofstream 向文件写…
原文:https://www.cnblogs.com/zhangxinqi/p/9135038.html https://blog.csdn.net/Rozol/article/details/71087283------Python3 I/O(数据流 模块) https://blog.csdn.net/taiyangdao/article/details/79156389-----Python的io模块详解 https://blog.csdn.net/zengxiantao1994/artic…
1.io概叙 io模块提供了python用于处理各种类型I/O的主要工具,主要有三种类型的I/O:文本I/O,二进制I/O和原始I/O:这些都是通用类型,各种后备存储可使用其中的每一种类型,所以这些类型的具体对象称为文件对象.他通常的术语叫流和文件对象. 每个具体流对象都具有各种功能:可以是只读,只写或读写.它可以允许任意的随机访问:向前或向后寻找任何位置或者只允许顺序访问如套接字或管道的情况下. 所有的流都会检测提供给它的数据类型,如给二进制流str字符类型的write()的写方法将会引发一个…
    1. 由于Java采用16位的Unicode字符,因此需要基于字符的输入/输出操作.从Java1.1版开始,加入了专门处理字符流的抽象类Reader和Writer,前者用于处理输入,后者用于处理输出. 2. Java程序语言使用Unicode来表示字符串和字符,Unicode使用两个字节来表示一个字符,即一个字符占16位 3. 字节流的编码规范与具体的平台有关,可以在构造流对象时指定规范,也可以使用当前平台的缺省规范 InputStreamReader和OutputStreamWrite…
字节流:因为内存中数据都是字节,二进制数据. 字符流:方便处理文本数据.字符流是基于字节流的. ascii 编码表,并且各国都有自己的编码表. unicode码表,世界码表.优化后 utf-8码表. 创建文件,写入文件 代码健壮的书写方式,要做异常处理 已有文件的续写 文件读取(此示例中没有编写异常 控制.真正编程时需要加进去) 操作示例 兼容win 和 linux 的换行符 用   读取操作示例 LineNumberReader 是 一个增强类(装饰类) 获取文件行数(注意写代码时要抛IO异常…
1 二进制IO(Binary IO) 在前一篇我们了解了逐字符读写和逐行读写函数. 如果我们在读写二进制文件,希望以此读写整个文件内容,这两个函数虽然可以实现,但是明显会很麻烦且多次循环明显效率很低. 为了应对这种场景,标准IO库提供了fread和fwrite函数. 函数声明: #include <stdio.h> size_t fread(void *restrict ptr, size_t size, size_t nobj, FILE *restrict fp); size_t fwri…