基于任务驱动模式的Java程序设计章 (2)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
java 第一节 输入/输出流的概述
(2) Writer类。Writer类中包含了一系列字符输出流需要的方法, 可以完成最基本的输出数据到输出流的功能,是所有字符输出流的父 类。根据输出的数据类型的不同,可以创建适当的Writer类的子类对 象来完成数据的输出。
这些子类也继承了Writer类的方法,其中常用的方法如下: ① 输出数据的方法。 void write(int c):将指定的整型值c的低16位写入输出流。 void write(char ch[]) :将字符数组ch[]中的ch.length个字符写 入输出流。
public static void main(String args[]) {
int b; try {
System.out.println("please Input:"); while ((b = System.in.read()) != -1)
{
java 第一节 输入/输出流的概述
System.out.print((char) b); }
这些子类对象也继承了InputStream类的方法,其中常用的方法如下: ① 读数据的方法。 int read():从输入流中读取一个字节,并返回此字节的ASCII码值,范 围在0~255之间,该方法的属性为abstract,必须被子类实现。
java 第一节 输入/输出流的概述
int read(byte[] b):从输入流中读取长度为b.length的数据, 写入字节数组b中,并返回读取的字节数。
(1) Reader类。Reader类中包含了许多字符输入 流的常用方法,是所有字符输入流的父类,根据需要输 入的数据类型的不同,可以创建适当的Reader类的子类 对象来完成输入操作。
java 第一节 输入/输出流的概述
这些子类也继承了Reader类的方法,其中常用的方 法如下:
① 读取数据的方法。 int read():读取一个字符。 int read(char cbuf[]):读取一系列字符到数组 cbuf[]中。 int read(char ch[],int off,int len):读取len个 字符,从数组ch[]的下标off处开始存放,该方法必须由 子类实现。 ② 标记和关闭流的方法与InputStream类相同。
java
表9.1 基本数据流的I/O
输入/输出 输入流 输出流
字节流 Inputstream OutputStream
字符流 Reader Writer
java 第一节 输入/输出流的概述
② 标记流的方法。 void mark(int readlimit):在输入流的当前读取位置作标记。 从该位置开始读取由readlimit指定的数据后,标记失效。 void reset():重置输入流的读取位置为mark()所标记的位置。 boolean markSuppposed():判断输入流是否支持mark()和 reset()。 void close():关闭并释放与该流相关的系统资源。
标准输入流中的常用方法如下: int read():返回ASCII码。若返回值=-1, 则说明没有读取到任何字节,读取工作结束。 int read(byte[] b):读入多个字节到缓冲区 b中,返回值是读入的字节数。
java 第一节 输入/输出流的概述
【示例9.1】 从键盘输入字符串并输出。 import java.io.*; public class StandardInputOutput {
System.out向标准输出设备输出数据,其数 据类型为PrintStream。
标准输出流中的常用方法有:Void print(参 数)和Void println(参数)。
java 第一节 输入/输出流的概述
2.标准输入流System.in
System.in读取标准输入设备数据(从标准输 入获取数据,一般是键盘),其数据类型为 InputStream。
} catch (eption e) {
System.out.println(e.toString()); } } } 等待键盘输入,键盘输入什么就打印出什么,程序如下: please input: asdfghj asdfghj
java 第一节 输入/输出流的概述
3.标准错误流
System.err输出标准错误,其数据类型为PrintStream, 可查阅API获得详细说明。
标准输出通过System.out调用println方法输出参数并换 行,而print方法输出参数但不换行。println或print方法都 通过重载实现了输出基本数据类型的多个方法,包括输出参 数类型为boolean、char、int、long、float和double的方 法。同时,也重载实现了输出参数类型为char[]、String和 Object的方法。其中,print(Object)和println(Object)方法 在运行时将调用参数Object的toString方法。
int read(byte[] b,int off,int len ):从输入流中读取长度 为len的数据,写入字节数组b中,并从索引off开始的位置返回读 取的字节数。
int available():返回从输入流中可以读取的字节数。 long skip(long n):从输入流当前读取位置向前移动n个字节, 并返回实际跳过的字节数。
java 第一节 输入/输出流的概述
1.字节流
从InputStream和OutputStream派生出来的一系列类。这类流以字节 (Byte)为基本处理单位。
(1) InputStream类。InputStream类可以完成最基本的从输入流读取 数据的功能,是所有字节输入流的父类,它的多个子类可查看9.2节。根据输 入数据的不同形式,可以创建一个适当的InputStream的子类对象来完成输 入。
java 第一节 输入/输出流的概述
② 刷新和关闭流的方法。 flush():刷新输出流,并输出所有被缓存 的字节。 close():关闭输出流,也可以由运行时系 统在对流对象进行垃圾收集时隐式关闭输 出流。
java 第一节 输入/输出流的概述
2.字符流
从Reader和Writer派生出的一系列类,这类流以 16位的Unicode码表示的字符为基本处理单位。
数据流是一串连续不断的数据的集合,就像水管里的水流,即数据可以 分段输入,从而按先后顺序形成一个长的数据流。对读取程序来说,看不到 数据流在输入时的分段情况,每次只可以按次序读取其中的数据,不管输入 时是将数据分多次输入,还是一次输入,读取时的效果都是完全一样的。
java 第一节 输入/输出流的概述
java 第一节 输入/输出流的概述
(2) OutputStream类。 OutputStream类可以完成最基本的输出数据的功能,是所有字节输出 流的父类,它的多个子类可查看9.2节。根据输出数据的不同形式,可以创建 一个适当的OutputStream的子类对象来完成输出。 这些子类对象也继承了OutputStream类的方法,其中常用的方法如下: ① 输出数据的方法。void write(int b ):将指定的字节b写入输出流。 该方法的属性为abstract,必须被子类所实现。参数中的b为int类型,如果b 的值大于255,则只输出它的低位字节所表示的值。 int write(byte [] b):把字节数组b中的b.length个字节写入输出流。 int write(byte[] b,int off,int len):把字节数组b中从索引off开始的 len个字节写入输出流。
System.out.println("Read: " + s); s = in.readLine();
} // 关闭缓冲阅读器 in.close(); } catch (IOException e) { // Catch any IO exceptions. e.printStackTrace(); } } }
出" + "\nWindows系统: ctrl-z 退出"); try { // 读一行数据,并标准输出至显示器 s = in.readLine(); // readLine()方法运行时若发生I/O错误,将抛出
IOException异常 while (s != null) {
java 第一节 输入/输出流的概述
java
第二第节二节输入Ja/v输a语出言流概的述分类
java 第二节 输入/输出流的分类 输入/输出流的分类
一、I/O流的四个基本类
java.io包中包含了I/O流所需要的所有类。 在java.io包中有四个基本类:InputStream、 OutputStream、Reader及Writer类,它们 分别处理字节流和字符流,如表9.1所示。
java 第一节 输入/输出流的概述
【示例9.2】 创建缓冲区阅读器,从键盘逐行读入数据。 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;
public class StandardInputOutput {
高职高专“十二五”规划教材
java
掌握Java语言的基本语法成分及其语法结构是进行Java程序设 计的前提条件。本章主要介绍标识符、数据类型、运算符、表达式、 Java编码规范和格式等内容。
java 输入/输出处理
java
一、输入/输出流的概述 三、字节流
二、输入/输出流的分类 四、字符流
五、InputStream与Reader的差别以及 OutputStream与Writer的差别
public static void main(String args[]) {
String s;
java
第一节 输入/输出流的概述
// 创建缓冲区阅读器,从键盘逐行读入数据 InputStreamReader ir = new
InputStreamReader(System.in); BufferedReader in = new BufferedReader(ir); System.out.println("Unix系统: ctrl-d 或 ctrl-c 退
java 第一节 输入/输出流的概述
三、标准输入/输出
Java程序可通过命令行参数与外界进行简短 的信息交换,同时,也规定了与标准输入/输出设 备,如键盘、显示器进行信息交换的方式。通过 文件可以与外界进行任意数据形式的信息交换。
java 第一节 输入/输出流的概述
1. 标准输出流System.out
二、输入/输出类层次
Jdk 提供了包java.io,其中包括一系列的类来实现 输入/输出处理。Java语言中定义了两种类型的流:字 节类和字符类。字节流(Byte Stream)为字节的输入和 输出处理提供了方法。例如,使用字节流来读取或书写 二进制数据。字符流(Character Stream)为字符的输入 和输出处理提供了方便。
java 第一节 输入/输出流的概述
void write(char ch[],int off,int len):将字符数组ch[]中的从 索引off开始的len个字符写入输出流。
void write(String str):将字符串str中的字符写入输出流。 void write(String str,int off,int len):将字符串str 中从索引 off处开始的len个字符写入输出流。 ② 刷新和关闭流的方法与OutputStream类相似。
java
第一节 输入/输出流的概述
java 第一节 输入/输出流的概述
输入/输出流的概述
一、输入/输出流的概念
Java中I/O操作主要是指使用Java进行输入/输出操作。Java所有的I/O 机制都是基于数据流进行输入/输出,这些数据流表示了字符或者字节数据 的流动序列。Java的I/O流提供了读写数据的标准方法。任何Java中表示数 据源的对象都会提供以数据流的方式读写数据的方法。