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. android开发 RecyclerView 列表布局

    创建一个一行的自定义布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns ...

  2. 解决Cell重用问题

    在显示的过程中,出现了内容重叠的问题,其实就是UITableViewCell重用机制的问题. 解决方法一:对在cell中添加的控件设置tag的方法 在cell的contentView上需要添加控件,那 ...

  3. JAVA操作字符串

    package com.test; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /* ...

  4. 《算法》第四章部分程序 part 8

    ▶ 书中第四章部分程序,包括在加上自己补充的代码,图中找欧拉路径 ● 无向图中寻找欧拉路径,只注释了与欧拉环不同的地方 package package01; import edu.princeton. ...

  5. webform之Repeater控件

    一.Repeater控件 数据循环编辑 1.repeater包括五大模板: (1)HeaderTemplate:标题模板,对开头进行编辑,只执行一次 (2)FooterTemplate:页尾结束模板, ...

  6. mybatis二(参数处理和map封装及自定义resultMap)

    .单个参数 mybatis不会做特殊处理. #{参数名/任意名}:取出参数值. .多个参数 mybatis会做特殊处理. 多个参数会被封装成 一个map. key:param1...paramN,或者 ...

  7. 汉诺塔问题python

    count = 0def hanoi(n,src,mid,dst): global count if n == 1: print("{}:{}->{}".format(1,s ...

  8. Linux sed 流编辑器

    sed是stream editor的简称,也就是流编辑器.盗用一张图片解释原理 命令格式: SYNPPSIS: sed [OPTION]… {script-only-if-no-other-scrip ...

  9. 利用STM32CubeMX来生成USB_HID_Mouse工程

    硬件开发板:STM32F103C8 软件平台 好了现在开始利用STM32CubeMX来生成我们的工程 1.新建工程 选择MCU的型号 选择选择时钟 开启usb的模块 选择USB的类 配置时钟树(主要是 ...

  10. idea 与springboot 快捷键

    ctrl + m 还原 查询 getmapping 修改默认端口号