首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

javaIO流

数据类型区分   字节流和字符流,现有的字节流,后来为了方便文本数据操作,才有的字符流,java中一个字符占两个字节。 一般是默认按照数据类型分类,不是流向。...读入流需要有文件,输出流会自动创建 FileInputStream 从文件系统中某个文件中获得输入字节。...int read(byte[] b) 从此输入流中将最多 b.length 个字节数据读入一个 byte 数组中。...; import java.io.InputStream; /** * 字节流四种方式复制文件: * 基本字节流一次一个字节,一次一个数组 * 高效字节流一次一个字节,一次一个数组 * @author...UTF-8不同,它定义了一种“区间规则”,这种规则可以和ASCII编码保持最大程度兼容: 它将Unicode编码为00000000-0000007F字符,用单个字节来表示 它将Unicode编码为00000080

29420

JAVA-FileInputStream之read方法「建议收藏」

既然说可以测试任意形式文件,那么用两种不同格式,测试文件data1.txt和data2.txt,里面均放入1个数字”1″,两文件格式分别为:ANSI和Unicode。...1.因为ANSI编码没有文件头,因此数字字符1只占一个字节,并且1Ascii码为49因此输出49,而Unicode格式有2个字节文件头,并且以2个字节表示一个字符,对于Ascii字符对应字符则是第...b.length 个字节数据读入一个 byte 数组中。...返回: 读入缓冲区字节总数,如果因为已经到达文件末尾而没有更多数据,则返回 -1。...解读: 1、最多b.length个字节数据读入一个byte数据组中,即,最多将byte数组b填满; 2、返回读入缓冲字节总数,如果因为已经到达文件末尾而没有更多数据,则返回-1。

57310
您找到你想要的搜索结果了吗?
是的
没有找到

Java IO学习笔记二

字节流和字符流 实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件 java.io包中操作文件内容主要有两大类:字节流、字符流...(这四个都是抽象类) 操作流程 Java中IO操作也是有相应步骤,以文件操作为例,主要操作流程如下: 使用File类打开一个文件 通过字节流或字符子类,指定输出位置 进行读/写操作...read(byte[] b, int off, int len) 从此输入流中将最多 len 个字节数据读入一个 byte 数组中,这个用于截取字节流,注意这里中文是占三个字节 long...程序中一个字符等于两个字节,那么java提供了Reader、Writer两个专门操作字符类。...常用函数 int read(char[] cbuf) 将字符读入数组

38740

IO流总结

Java类库中,IO部分内容是很庞大,因为它涉及领域很广泛: 标准输入输出,文件操作,网络上数据流,字符串流,对象流,zip文件流等等,java中将输入输出抽象称为流,就好像水管...非流式文件类--File类 Java语言java.io包中,由File类提供了描述文件和目录操作与管理方法。...文件输入流: FileInputStream类 FileInputStream可以使用read()方法一次读入一个字节,并以int类型返回,或者是使用read()方法时读入至一个byte数组...,byte数组元素有多少个,就读入多少个字节。...将整个文件读取完成或写入完毕过程中,这么一个byte数组通常被当作缓冲区,因为这么一个byte数组通常扮演承接数据中间角色。 ? 作用:以文件作为数据输入源数据流。

1.3K70

Java IO流笔记

分类 操作数据单位:字节流、字符流 对于文本文件(.txt,.java,.c,.cpp),使用字符流处理 对于非文本文件(.jpg,.mp3,.mp4,.avi,.doc,.ppt,...)...int read(byte[] b) 从此输入流中将最多b.length个字节数据读入一个byte数组中。如果因为已经到达流末尾而没有可用字节,则返回值-1.否则以整数形式返回实际读取字节数。...int read(char[] cbuf) 将字符读入数组。如果已到达流末尾,则返回-1。否则返回本次读取字符数。...File("Test. txt")); 创建一个临时存放数据数组 char[] ch = new char[1024]; 调用流对象读取方法将流中数据读入数组中。...对于文本文件(.txt,.java,.c,.cpp),使用字符流处理 对于非文本文件(.jpg,.mp3,.mp4,.avi,.doc,.ppt,...)

89920

Java IO(IO流)-1

(FileOutputStream 文件输出流) java->JVM->OS 流对象使用基本步骤 创建流子类对象,绑定数据目的地(文件路径) 使用write方法写或read方法读 close()方法关闭流对象...读一个字节,返回读取到字节 当读取到文件结尾时候,将会返回-1 read(byte[] b) // 从输入流中读入一定量字节,并将其存储到缓存区数组byte[] b 中 , 使用数组来提高读取效率...,返回为读取到字符数量 read(byte[] ,int ) // 将输入流中最多 len 个数据字节读入 byte 数组。...数组读取内容方式 从文件中读取一个字符数组初始位置,然后继续读,只到数组长度满了或者到了文件结尾 当第二次读时候会将读取到字符依次放入数组中 ?..., int len) : 将字符读入数组某一部分。

1.4K00

快速上手打通javaIO流

如果因为已经到达流末尾而没有可用字节,则返回值 -1。 int read(byte[] b) 从此输入流中将最多 b.length 个字节数据读入一个 byte 数组中。...作为整数读取字符,范围在 0 到 65535 之间 (0x00-0xffff)(2个字节Unicode码),如果已到达流末尾,则返回 -1 int read(char[] cbuf) 将字符读入数组...如果已到达流末尾,则返回 -1。否则返回本次读取字符数。 int read(char[] cbuf,int off,int len) 将字符读入数组某一部分。...最常见文本文件:.txt,.java,.c,.cpp 等语言源代码。尤其注意.doc,excel,ppt这些不是文本文件。...缓冲流  为了提高数据读写速度,Java API提供了带缓冲功能流类,使用这些流类时,会创建一个内部缓冲区数组,缺省使用8192个字节(8Kb)缓冲区。

17930

Java 持久化操作之 --io流与序列化

(in)与输出流(out) · 按流功能可分为节点流(Node)和过滤流(Filter) Java中,字节流一般适用于处理字节数据(诸如图片、视频),字符流适用于处理字符数据(诸如文本文件),但二者并没有严格功能划分...1)字节流读写文件 一般用于处理字节数据,但字节流采用ASCII编码,所以处理字符数据时容易出现中文乱码 1. ...IOException从所包含输入流中将 len 个字节读入一个字节数组中。...表示当前还剩多少个字节未读取     注意:read方法返回 int 类型 返回读入字节数组长度,如果读取到文件末尾时候,则返回-1 代码演示按字节读取到控制台:     四步走:1.导入相关类  ...//B.txt"),true); //声明要写入内容 String name="我是测试字符串"; //将字符串转换为字节数组

1.1K90

Java(2)-Java IO输入输出流

Java类库中,IO部分内容是很庞大,因为它涉及领域很广泛: 标准输入输出,文件操作,网络上数据流,字符串流,对象流,zip文件流等等,java中将输入输出抽象称为流,就好像水管...非流式文件类--File类 Java语言java.io包中,由File类提供了描述文件和目录操作与管理方法。...,byte数组元素有多少个,就读入多少个字节。...将整个文件读取完成或写入完毕过程中,这么一个byte数组通常被当作缓冲区,因为这么一个byte数组通常扮演承接数据中间角色。 作用:以文件作为数据输入源数据流。...如:FileWriter fw = new FileWriter("C:\\1.txt",ture); //表示fw对文件再次写入时,会在该文件结尾续写,并不会覆盖掉。

77010

数据读写API——IO流

理清一些概念 1.JavaIO是干啥? IO指的是Input和Output,主要目的是实现数据存储介质之间传输。【流:数据流,类比与水流流动】 2.IO分类 ?...上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间关系,做了统一规定。这被称为 ASCII 码,一直沿用至今。...*  char[] ch = new char[1024]; * 3.调用流对象读取方法将流中数据读入数组中。...*/ } } 缓冲流(一种处理流) 为了提高数据读写速度,Java API提供了带缓冲功能流类,使用这些流类 时,会创建一个内部缓冲区数组,缺省使用8192个字节(8Kb)缓冲区。...br.close(); bw.close(); } } 转换流 转换流提供了字节流和字符流之间转换 Java API提供了两个转换流: InputStreamReader

59230

庖丁解牛:NIO核心概念与机制详解

Pre NIO 库是 JDK 1.4 中引入。NIO 弥补了原来 I/O 不足,它在标准 Java 代码中提供了高速、面向块 I/O。...单独程序一般是让系统为它们完成大部分工作。 Java 编程中,直到最近一直使用 流 方式完成 I/O。...在这里,数据将从一个名为 message 数组中取出,这个数组包含字符串 "Some bytes" ASCII 字节(下面会解释 buffer.flip() 和 buffer.put() 调用)。...我们以一个名为 CopyFile.java 简单程序作为这个练习基础,它将一个文件所有内容拷贝到另一个文件中。...CopyFile.java 执行三个基本操作: 首先创建一个 Buffer 然后从源文件中将数据读到这个缓冲区中 然后将缓冲区写入目标文件

15450

新手小白学JAVA IO流 File 字节流 字符

java中,根据处理数据单位不同,可以把流分为字节流和字符流 字节流 : 针对二进制文件 字符流 : 针对文本文件 再结合对应类型输入和输出方向,常用流有: File 字节流:针对二进制文件...("E:\\ready\\2.txt"); //创建一个之前不存在文件2.txt,如果创建成功,会返回true /*如果指定创建文件路径不对,会抛出异常:java.io.Exception...常用方法: int read() 读取单个字符 int read(char[] cbuf) 将字符读入数组 abstract int read(char[] cbuf, int off, int...len) 将字符读入数组某一部分 int read(CharBuffer target) 试图将字符读入指定字符缓冲区 abstract void close() 关闭该流并释放与之关联所有资源...,数组字符高效写入.可以指定缓冲区大小,或者接受默认大小,大多数情况下,默认值就足够大了 构造方法(创建对象): BufferedWriter(Writer out) 创建一个使用默认大小输出缓冲区缓冲字符输出流

37110

Java基础-3】吃透Java IO:字节流、字符流、缓冲流

字符流一般用于处理纯文本类型文件,如TXT文件等,但不能处理图像视频等非文本文件。用一句话说就是:字节流可以处理一切文件,而字符流只能处理纯文本文件。...read(byte[] b) :从此输入流中将最多 b.length 个字节数据读入一个 byte 数组中。...read(byte[] b, int off, int len) :从此输入流中将最多 len 个字节数据读入一个 byte 数组中。 close():关闭此输入流并释放与该流关联所有系统资源。...3.2 字符流方法 字符输入流Reader主要方法: read():读取单个字符。 read(char[] cbuf) :将字符读入数组。...read(char[] cbuf, int off, int len) : 将字符读入数组某一部分。 read(CharBuffer target) :试图将字符读入指定字符缓冲区。

46130

JavaFileInputStream与FileOutputStream基本使用详解

这里,我们首先要分清楚两个概念: InputStream(输入流):输入流是用来读入数据。- – – > > >读入 OutputStream(输出流):输出流是用来写出数据。...public int read(); ---- 从输入流一次读取一个字节数组 //从此输入流中将最多 b.length 个字节数据读入一个 byte 数组中。...public int read(byte[] b); //从此输入流中将最多 len 个字节数据读入一个 byte 数组中。off:目标数组 b 中起始偏移量。...void write(int b); ---- 向文件中一次性写入一个字节数组数据 //将 b.length 个字节从指定 byte 数组写入此文件输出流中。...import java.io.FileInputStream; import java.io.FileOutputStream; /** * 使用文件输入流和文件输出流实现文件复制 * @author

52240

Java IO学习(附实例和详解)

一、Java I/O类结构以及流基本概念 阅读Java I/O实例之前我们必须清楚一些概念,我们先看看Java I/O类结构图: ? Java I/O主要以流形式进行读写数据。...Java采用16位Unicode来表示字符串和字符写入字符流时我们都可以指定写入字符编码。 这里博主贴出字符流类图结构,方便猿友阅读: ?...返回字符整数值,如果已经到达文件尾,则返回-1. (2)int read(char[] cbuf):将字符读入cbuf字符数组。...(7)int read(byte[] b):从此输入流中将最多 b.length 个字节数据读入一个 byte 数组中。...(8)int read(byte[] b, int off, int len):从此输入流中将最多 len 个字节数据读入一个 byte 数组中。

41720

javaIO流

但是不能访问文件内容本身,如果需要访问文件本身,需要使用输入/输出流 字符流与字节流 字节流 Java字节流处理最基本单位为单个字节,它通常用来处理二进制数据。...每个ASCII字符占用1 个字节,因此,ASCII 编码可以表示最大字符数是255(00H—FFH)。这对于英文而言,是没有问题,一般只什么用到前128个(00H–7FH,最高位为0)。...以上范围内每个数字都与一个字符相对应,JavaString类型默认就把字符以Unicode规则编码而后存储在内存中。然而与存储在内存中不同,存储磁盘上数据通常有着各种各样编码方式。...写入了demo这四个字符,如果用十六机制编辑器打开文件可以看到64 65 6D 6F,我们并没有代码中指定编码方式,实际上,我们没有指定时使用是操作系统默认字符编码方式来对我们要写入字符进行编码...Java序列化API为处理对象序列化提供了一个标准机制,该API简单易用,本文后续章节中将会陆续讲到。

28420
领券