java输入输出系统课件

上传人:第*** 文档编号:48859825 上传时间:2018-07-21 格式:PPT 页数:44 大小:1.70MB
返回 下载 相关 举报
java输入输出系统课件_第1页
第1页 / 共44页
java输入输出系统课件_第2页
第2页 / 共44页
java输入输出系统课件_第3页
第3页 / 共44页
java输入输出系统课件_第4页
第4页 / 共44页
java输入输出系统课件_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《java输入输出系统课件》由会员分享,可在线阅读,更多相关《java输入输出系统课件(44页珍藏版)》请在金锄头文库上搜索。

1、PagePage 1 1 / 38/ 38J Java ava I I/0/0 系统系统avaava 输入输出流输入输出流PagePage 2 2 / 38/ 38本章学习提示 本章我们主要学习本章我们主要学习JavaJava语言的输入输出处理的机制语言的输入输出处理的机制 基本流基本流的使用的使用 字符流字符流的使用的使用 字节流字节流的使用的使用 文文 件件的访问的访问avaava 输入输出流输入输出流PagePage 3 3 / 38/ 38目目 录录JavaJava I/O I/O流概述流概述1文件处理文件处理54字节流字节流基本流2字符流字符流3avaava 输入输出流输入输出流Pa

2、gePage 4 4 / 38/ 38常用软件avaava 输入输出流输入输出流PagePage 5 5 / 38/ 38输入输出类库 输入和输出是程序与用户之间沟通的桥梁,程序与用户进行 信息交互的重要手段。 Java 提供专用于输入输出功能的包java.io ,其中包含5个非 常重要的类,所有与输入输出有关的类都继承了这5个类。 基本流 System.outSystem.in 字符流 Reader Writer 字节流 InputStream OutputStream 文件流 FileInputStream FileOutputStream 过滤流 FilterInputStream Fi

3、lterOutputStream Java的输入输出是以流(stream)的方式进行处理的。流是 在计算机的 输入、输出操作中流动的数据序列。Java 按流的单位分有位流(字节流)和字符流;按流动方向分为输入 流和输出流。按照功能不同可以分为节点流和处理流 avaava 输入输出流输入输出流PagePage 6 6 / 38/ 38节点流和处理流节点流为可以从一个特定的数据源(节点)读写数据(如:文件 ,内存)功能:连接数据源数据源程序处理流是“连接”在已存在的流(节点流或处理流)之上,通过对 数据的处理为程序提供更为强大的读写功能。功能:数据处理节点流数据源数据源程序程序avaava 输入输

4、出流输入输出流PagePage 7 7 / 38/ 38输入流示意图 输出流示意图 可以从输入流读取数据不能写数据可以从输出流写数据不能读取数据avaava 输入输出流输入输出流PagePage 8 8 / 38/ 38I/O流的分类 按所读写的数据类型分两类: 字符流类(Character Streams) 字符流类用于向字符流读写16位二进制字符。 字节流类(Byte Streams) 字节流类用于向字节流读写8位二进制的字节。一般地,字节流类主要用于读写诸如图象或声音等的二进制数据。avaava 输入输出流输入输出流PagePage 9 9 / 38/ 38目目 录录JavaJava I

5、/O I/O流概述流概述1文件处理文件处理54字节流字节流基本流2字符流字符流3avaava 输入输出流输入输出流PagePage 1010 / 38/ 38基本流 为了减少程序开发人员,因频繁应用标准的输入输出设备,需要频繁地建立输入输出流对象的工作量,java系统预先定义好3个流对象,分别表示标准输出设备、标准输入设备和标准错误设备。他们分别是: System.in :用于程序的输入; 对应外设为键盘 System.out:用于一般输出; 对应外设为屏幕 System.err:用于显示出错信息; 对应外设为屏幕 System 类的所有属性都是静态static的,调用时以类名System为前

6、缀。上述3个流对象均为静态属性。avaava 输入输出流输入输出流PagePage 1111 / 38/ 38基本I/O之例 /从键盘输入字符,然后在屏幕上显示输入结果 import java.io.*; public class standardIO public static void main(String args) throws IOException /IO操作必须捕获IO异常 char c; System.out.println(“输入任一字符 “); c=(char)System.in.read(); System.out.println(“输入的字符是 :“+c); J Ja

7、va ava 输入输出流输入输出流PagePage 1212 / 38/ 38基本IO之例 /基本IO standardIO2.java,从命令行读入字符串,并处理和显示 import java.io.*; public class standardIO public static void main(String args) throws IOException /IO操作必须捕获IO异常 /先使用System.in构造InputStreamReader,再构造BufferedReader。 InputStreamReader iin = new InputStreamReader(Syst

8、em.in); BufferedReader stdin=new BufferedReader(iin); /读取并输出字符串。 System.out.print(“Enter a string: “); System.out.println(stdin.readLine(); /读取字符串并转换成double类型数据输出 System.out.print(“Enter a double: “); /将字符串解析为带符号的double类型数据。 double number2=Double.parseDouble(stdin.readLine(); System.out.println(numb

9、er2); J Java ava 输入输出流输入输出流PagePage 1313 / 38/ 38目目 录录JavaJava I/O I/O流概述流概述1文件处理文件处理54字节流字节流基本流2字符流字符流3avaava 输入输出流输入输出流PagePage 1414 / 38/ 38Unicode字符流I/O类层次关系图 avaava 输入输出流输入输出流PagePage 1515 / 38/ 38Reader类 用来以字符方式从流中读入数据。 Reader类中包含了一套所有字符输入流都需要的方法,可以完成最基本的从字符输入流读取数据的功能。 Reader是一个抽象类,所以实际应用中创建的对

10、象是Reader 某个子类的对象,通过该子类对象与外接数据源连接。 子类必须实现的方法只有 int read(char b, int offset, int length) void close() 当输入流使用完毕后,可以调用该方法将其关闭,断开java程序与外设数据源的联系,释放此连接所占用的系统资源avaava 输入输出流输入输出流PagePage 1616 / 38/ 38Reader常用子类 BufferedReader 从字符输入流中读取文本,缓冲各个字符,从而实现字 符、数组和行的高效读取 可以指定缓冲区的大小 InputStreamReader 字节流通向字符流的桥梁:它使用指

11、定的 charset 读取 字节并将其解码为字符。 每次调用 InputStreamReader 的read() 方法都会导致从 底层输入流读取一个或多个字节。 FileReader 用来读取字符文件的类 用于读取字符流详细内容见 软件包 java.io 的Reader类avaava 输入输出流输入输出流PagePage 1717 / 38/ 38Writer类 用来以字符方式向输出流中写入数据。Writer类中包含了一套所有字符输出流都需要的方法,可以完成最基本的向字符输出流写入数据的功能。 Writer是一个抽象类,所以实际应用中创建的对象是Writer 某个子类的对象,通过该子类对象与外

12、接数据源连接。 子类必须实现的方法仅有 void write(char b, int offset, int length) void close() void flush() /强制清空缓冲区 当输入流使用完毕后,关闭输出流,断开java程序与外设数据源的连接,释放所占有的系统资源avaava 输入输出流输入输出流PagePage 1818 / 38/ 38Writer常用子类 BufferedWriter 将文本写入字符输出流,缓冲各个字符 可以指定缓冲区的大小 OutputStreamWriter 字符流通向字节流的桥梁:可使用指定的 charset 将要 写入流中的字符编码成字节 每次

13、调用 write() 方法都会导致在给定字符(或字符集) 上调用编码转换器 FileWriter 用来写入字符文件的类 文件是否可用或是否可以被创建取决于底层平台 PrintWriter 向文本输出流打印对象的格式化表示形式详细内容见 软件包 java.io 的Writer类avaava 输入输出流输入输出流PagePage 1919 / 38/ 38字符流之例/输入字符串、浮点数、整数在屏幕上显示输入结果 import java.io.*; public class standardIO3 public static void main(String args) throws IOExcep

14、tion InputStreamReader iin=new InputStreamReader(System.in); BufferedReader bin=new BufferedReader(iin); String s; float f; int i=0; System.out.println(“输入任一字符串“); s=bin.readLine(); System.out.println(“输入浮点数“); f=Float.parseFloat(bin.readLine(); System.out.println(“输入整数“); i=Integer.parseInt(bin.readLine(); System.out.println(“输入的字符串:“+s); System.out.println(“输入的浮点数:“+f); System.out.println(“输入的整数:“+i); J Java ava 输入输出流输入输出流PagePage 2020 / 38/ 38目目 录录JavaJava I/O I/O流概述

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号