Java中的IO流:就是内存与设备之间的输入和输出操作就成为IO操作,也就是IO流。内存中的数据持久化到设备上--------》输出(Output)。把 硬盘上的数据读取到内存中,这种操作 成为输入-----》读(Input)。

input和output的参照物都是Java程序来参照

Input:读  持久化上的数据------》内存 父类 InputStream

output:写  内存---------》硬盘  父类OutputStream

IO程序书写流程:

  1 使用前   导包 IO包中的类(import java.io.*)

  2   使用中   进行异常的处理

  3 使用后     释放资源(close())

例子如下:

OutputStream字节输出流的用法(写):

 package com.aaa.demo;

 import java.io.FileNotFoundException;
import java.io.FileOutputStream; /*
* FileOutputStream 写入数据文件 学习父类的方法 使用子类的对象
* 子类中的构造方法 作用:绑定输出的目的的
* File封装的文件
* String字符串的文件夹
* */
public class FileOutputStreamDemo {
public static void main(String[] args) throws Exception {
//创建流子类对象 绑定数据目的
FileOutputStream fos=new FileOutputStream("c:\\aaa.txt");
//调用write()方法 写一个字节
fos.write(97);
//2.1写字节数组
byte[] b={65,66,67,68};
fos.write(b);
//2.2写字节数组的一部分
fos.write(b,1,2);
//2.3写字符串 getBytes()字符串转字节
fos.write("hello world".getBytes());
//3.close关闭资源
fos.close();
}
}

InputStream字节输入流的用法(读):

 package cn.lijun.demo1;

 import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; // 1创建字节输入流的子类对象
//2 调用方法读取 read
//3 关闭资源 public class FileInputStreamDemo {
public static void main(String[] args) {
try {
FileInputStream fis = new FileInputStream("c:\\aaa.txt");
int len =0;
while((len=fis.read())!=-1){
System.out.print((char)len);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

字节流和字符流的相同和区别:

  相同点:两类都分为输入和输出操作。

  不同点:1、字节流可用于任何类型的对象;分为InputStream(读)和OutputStream(写)两部分完成输入和输出;主要用来处理字节或二进制对象,,不能处理Unicode字符。

      2、字符流分别操作字符、字符数组或字符串;分为Writer类和Reader类完成;主要用来处理字符或者字符串,可以处理Unicode字符。

Java中的IO流,Input和Output的用法,字节流和字符流的区别的更多相关文章

  1. JAVA IO分析一:File类、字节流、字符流、字节字符转换流

    因为工作事宜,又有一段时间没有写博客了,趁着今天不是很忙开始IO之路:IO往往是我们忽略但是却又非常重要的部分,在这个讲究人机交互体验的年代,IO问题渐渐成了核心问题. 一.File类 在讲解File ...

  2. java基础(四):谈谈java中的IO流

    1.字节流 1.1.字节输出流output 1.1.1.数据写入文件中 通过api查找output.找到很多,其中java.io.OutputStream,OutputStream: 输出字节流的超类 ...

  3. Java中的IO流(二)

    上一篇<Java中的IO流(一)>把学习IO流的字符流作了一下记录,本篇把字节流记录一下. 一,Java中的字节流 Java中的字节流的操作方式与字符流的操作方式大致相同,连方法名都是类似 ...

  4. Java中的IO流总结

    Java中的IO流总结 1. 流的继承关系,以及字节流和字符流. 2. 节点流FileOutputStream和FileInputStream和处理流BufferedInputStream和Buffe ...

  5. Java中的IO流(一)

    一,IO流的分类 A,按照操作的对象不同可分为字节流与字符流 B,按照流的方向不同可分为输入(指从外部存储设备拿文件到内存)流也叫读与输出(指从内存把文件写入到外部存储设备)流也叫写 注:字节流可以操 ...

  6. java的IO操作:字节流与字符流操作

    流的概念 程序中的输入输出都是以流形式,流中保存的实际上都是字节文件. 字节流与字符流 字节流的操作: 1)输入:inputStream, 2)输出:outPutStream; 字符流的操作: 1)输 ...

  7. 第40节:Java中的IO知识案例

    流是一连流串的字符,是信息的通道,分输出流和输入流. IO的分类 第一种分:输入流和输出流. 第二种分:字节流和字符流. 第三种分:节点流和处理流. Java中流的分类: 流的运动方向,可分为输入流和 ...

  8. Java中常用的字节流和字符流

    IO流(输入流.输出流) 字节流.字符流 1.字节流: InputStream.OutputStream InputStream抽象了应用程序读取数据的方式: OutputStream抽象了应用程序写 ...

  9. Java字节流与字符流基本操作

    在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据时要使用输入流读取数据,而当程序需要将一些数据保存起来时,就要使用输出流. 在java.io包中流的操作主要有字节流.字符流两大类,两类都 ...

  10. java 字节流与字符流的区别详解

    字节流与字符流 先来看一下流的概念: 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入 ...

随机推荐

  1. 凸优化&非凸优化问题

    转载知乎大神的回答:Robin Shen   参考:https://www.zhihu.com/question/20343349

  2. 对datetime日期类型进行序列化的处理

    datetime类型序列化 在工作中遇到从数据库中取出来一个datetime类型的数据,在对其进行序列化的过程中,报错python datetime.datetime is not JSON  ser ...

  3. Java 多线程 (Thread 类)

    1.多线程 2.卖票 1.多线程实现 两种方式可以实现多线程: 继承 Thread 类,重写 run 方法:定义对象,调用 start 方法 创建类实现 Runnable 接口,作为实参传递给 thr ...

  4. Strandbeest mechanism and Leg mechanism

    I have to say besides computer science study, I'm also interested in Leg mechanism. Share two keywor ...

  5. [Writeup]百度一下,你就知道

    [Writeup]百度一下,你就知道 谢邀@宋雨田 人在607,刚下床 育才上网,信号不好 实名diss,能人宋雷 ---------------------- 以下是原答案 ------------ ...

  6. 读取文件 读取项目里面的json

    ClassPathResource resource = new ClassPathResource("properties/post2LazadaTest.json"); Fil ...

  7. 关于 jquery+ajax向asp.net传递json的问题研究(呕心沥血、柳暗花明)

    第一种方法:字典的方法 //质检不合格 $('#Button3').click(function () { if (!confirm('确定质检不合格吗?')) return; var obj = n ...

  8. Linux 指令(一)文件/目录操作

    1. 创建目录 mkdir 格式 mkdir [OPTION]... DIRECTORY... 选项 -p 递归创建 -v 创建时提示 例: root@ubuntu:/home/eko/x# mkdi ...

  9. linux-2.6.22.6 内核源代码包的文件目录介绍

    下载一个linux-2.6.22.6.tar并解压 再其解压的文件中加入下面的bat脚本 生成当前文件的目录树脚本如下: @rem 此BAT文件名一定不能是"tree.bat",否 ...

  10. Oracle表复杂查询

    转自:https://www.cnblogs.com/w-gao/p/7288293.html Oracle表复杂查询 聚合函数 max(字段值)  -- 求最大值 min(字段值)  -- 求最小值 ...