1.IO操作的目标

什么是IO操作的目标?

输入:

从数据源当中读取数据

输出:

将数据写入到数据目的地当中

有数据进入到程序当中,这个过程就可以被叫做输入

流:即在数据源与程序之间建立的传输通道

2.IO的分类方法

IO的分类:

第一种分法:

1.输入流

2.输出流

第二种分法:

1.字节流:即读取数据时,以字节为基础,每次读取几个字节

2.字符流:即每次读取一个字符

第三种分法:

1.节点流:即正真处理数据的IO流(普通的水管)

2.处理流:即用来在节点流的基础上,对数据进行再加工(普通的水管外套一层处理层)

IO当中的字节流的核心类:

InputStream和OutputStream是所有字节流的父类

InputStream和OutputStream都是抽象类

3.读取文件和写入文件的方法

读取数据的方法:

InputStream:

Int read(byte[] b,int off ,int len);

read()从硬盘的文件当中读取数据,以字节的形式把数据读进来,读取的数据保存在byte[] b这个数组当中

int off:为偏移量,读进来的数据从这个数组的第几位开始放

Int len:读取一次最多读多少数据

返回值是这一次调用read()方法总共读取了多少字节的数据

写入数据的方法:

OutputStream:

void write(byte[] b,int off,int len);

byte[] b:要文件里面写的数据

int off:从数组的第几位开始往文件里面写

Int len:一次一共要往文件里面写多少位数据

使用过程:

注意:在文件读数据流时候需要对FileInputStream的FileNotFoundException进行捕捉抛出,否则编译将不通过(checked Exception),如下图

注意:在此数据流中读取数据字节,需要抛出一个IOException,否则编译将不通过(checked Exception)如下图

读数据示例:

/*****************************************************************/

总结:

1.IO系统的主要目标是为了对数据进行读写操作;

2.数据的流向以Java程序为参照物

3.IO流可以有三种分类方法;

4.read方法和write方法;

Java当中的IO一的更多相关文章

  1. 第55节:Java当中的IO流-时间api(下)-上

    Java当中的IO流(下)-上 日期和时间 日期类:java.util.Date 系统时间: long time = System.currentTimeMillis(); public class ...

  2. 第54节:Java当中的IO流(中)

    Java当中的IO流(中) 删除目录 // 简书作者:达叔小生 import java.io.File; public class Demo{ public static void main(Stri ...

  3. 第53节:Java当中的IO流(上)

    Java当中的IO流 在Java中,字符串string可以用来操作文本数据内容,字符串缓冲区是什么呢?其实就是个容器,也是用来存储很多的数据类型的字符串,基本数据类型包装类的出现可以用来解决字符串和基 ...

  4. 第39节:Java当中的IO

    Java当中的IO IO的分类 第一种分:输入流和输出流 第二种分:字节流和字符流 第三种分:节点流和处理流 节点流处理数据,处理流是节点流基础上加工的. IO中的重点: InputStream Ou ...

  5. Java当中的IO流-时间api(下)-上

    Java当中的IO流(下)-上 日期和时间 日期类:java.util.Date 系统时间: long time = System.currentTimeMillis(); public class ...

  6. Java当中的IO流(中)

    Java当中的IO流(中) 删除目录 import java.io.File; public class Demo{ public static void main(String[] args){ / ...

  7. Java当中的IO流(上)

    Java当中的IO流 在Java中,字符串string可以用来操作文本数据内容,字符串缓冲区是什么呢?其实就是个容器,也是用来存储很多的数据类型的字符串,基本数据类型包装类的出现可以用来解决字符串和基 ...

  8. Java当中的IO三

    1.处理流的使用实例 bufferedReader(处理流)介绍: buffereReader属于字符流,其次也是处理流,也是输入流,即字符输入处理流 常用方法 readLine() Buffered ...

  9. Java当中的IO二

    1.大文件的读写方法 由于文件很大,我们不能一下子把文件内的所有内容都读取出来,所以只能一段一段的读取 注意:在关闭read()和write()的时候可能会产生IOException,需要对其进行处理 ...

随机推荐

  1. MSSQL Server2012备份所有数据库到网络共享盘上面,并自动删除几天前的备份。。

    --要备份到哪一服务的IP网络位置,要提前打开文件夹共享.这里还要输入用户名和密码,下面这一行是建立共享 exec master..xp_cmdshell 'net use \\192.168.8.1 ...

  2. 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery )

    一. 前言 在前面的两个章节中,我们分别详细介绍了EF的增删改的两种方式(方法和状态)和EF查询的两种方式( Lambda和Linq ),进行到这里,可以说对于EF,已经入门了,本来应该继续往下进行E ...

  3. [Android] Android Java String 转Uri

    Uri uri = Uri.parse("https://www.baidu.com") URI uri = new URI("https://www.baidu.com ...

  4. Jasmine

    Jasmine https://www.npmjs.com/package/jasmine The Jasmine Module The jasmine module is a package of ...

  5. Groovy 设计模式 -- 迭代器模式

    Iterator Pattern http://groovy-lang.org/design-patterns.html#_flyweight_pattern 迭代器模式,允许顺序访问 聚集对象中的中 ...

  6. 一些Js操作

    一.after()和before()方法的区别 after()——其方法是将方法里面的参数添加到jquery对象后面去:    如:A.after(B)的意思是将B放到A后面去:    before( ...

  7. 可持久化 trie 的简单入门

    可持久化 $trie$  ....又是一个表里不一的东西..... 可持久化 $trie$  的介绍: 和主席树类似的,其实可持久化就是体现在前缀信息的维护上(搞不懂这怎么就叫做可持久化了...) $ ...

  8. Lua中的userdata

    [话从这里说起] 在我发表<Lua中的类型与值>这篇文章时,就有读者给我留言了,说:你应该好好总结一下Lua中的function和userdata类型.现在是时候总结了.对于functio ...

  9. WPF中触发器Trigger、MultiTrigger、DataTrigger、MultiDataTrigger、EventTrigger几种

    WPF中有种叫做触发器的东西(记住不是数据库的trigger哦).它的主要作用是根据trigger的不同条件来自动更改外观属性,或者执行动画等操作. WPFtrigger的主要类型有:Trigger. ...

  10. Axis接口

    Axis支持三种web service的部署和开发,分别为: 1.Dynamic Invocation Interface ( DII) 2.Dynamic Proxy方式 3.Stubs方式Dyna ...