第10章 JAVA_IO

合集下载

java各章习题答案

java各章习题答案

java各章习题答案Java各章习题答案在学习Java编程语言的过程中,习题是非常重要的一部分。

通过习题,我们可以巩固所学的知识,加深对语言特性和用法的理解。

在每一章的学习结束后,我们都会遇到一系列的习题,这些习题涵盖了本章的知识点,帮助我们检验自己的掌握程度。

下面我们来看一下Java各章习题的答案。

第一章:Java基础知识1.1 什么是Java编程语言?Java是一种面向对象的编程语言,由Sun Microsystems公司于1995年推出。

它具有跨平台性和安全性等特点。

1.2 Java程序的基本结构是什么?Java程序的基本结构包括包名、导入语句、类声明、主方法和其他方法。

1.3 Java中的数据类型有哪些?Java中的数据类型包括基本数据类型和引用数据类型。

基本数据类型包括整型、浮点型、字符型和布尔型。

1.4 Java中的控制语句有哪些?Java中的控制语句包括if语句、switch语句、while循环、for循环等。

第二章:面向对象编程2.1 什么是面向对象编程?面向对象编程是一种程序设计范式,它将数据和方法封装在对象中,通过对象之间的交互来实现程序的功能。

2.2 Java中的类和对象有什么区别?类是一种抽象的概念,它用来描述对象的属性和行为;对象是类的实例,它具体描述了类的属性和行为。

2.3 Java中的继承和多态是什么?继承是一种类与类之间的关系,它允许一个类继承另一个类的属性和方法;多态是一种对象的多种形态,它允许同一个方法在不同的对象上具有不同的行为。

2.4 Java中的封装和抽象是什么?封装是一种将数据和方法封装在对象中的机制,它可以保护数据的安全性;抽象是一种将对象的共性特征提取出来的机制,它可以提高代码的复用性。

第三章:异常处理3.1 什么是异常?异常是程序在运行过程中发生的错误或意外情况,它可能导致程序的中断或崩溃。

3.2 Java中的异常处理机制有哪些?Java中的异常处理机制包括try-catch语句、throw语句和throws关键字等。

第十章、package与异常处理

第十章、package与异常处理
11
将独立分开的类纳入同一个 package
文件名:MyApp.java package test; public class MyApp{ public static void main(String[] args){ Calculator c=new Calculator(); System.out.println(c.add(10,25)); } };
14
编译以及运行的过程
另外需要提醒的是,同一个java文件中只有 一个类可以声明成为public。所以如果一个 package中有几个类要被其它package中的类 访问,那么它们必须存在不同的java文件中。
15
导入package
除了声明“packageName.className”来引
用其它package中的类以外,还可以使用 导入package的方法。也就是import语句。 通过import语句,我们可以将某个 package内的整个类导入,因此后续的程 序代码便不用再写上被访问的package的 名称了。看例子。
2
文件的分割
在开发项目的时候,出于工作上的需要,程序
代码开发通常是由一些人,或者是几个小组同 时进行。每个参与的小组或者成员分别负责某 些类,并将所编写的类分开保存在各自的文件 中,分别编译测试。这种概念是利用文件分割 的方式,将大型程序分开成为独立的类,以利 于程序的开发和维护。 下面以之前介绍的一个类为例子。
23
为何需要异常处理

在没有异常处理机制的语言中,我们必须使用if-else或 者switch等语句,配合所想到的错误状况来捕捉程序中 可能出现的错误。例如为了判断除数不为0:
if (b!=0){ x=a/b }else System.out.println("b should not be 0");

Java IO详细教程

Java IO详细教程

Java I/O总结∙从new BufferedReader(new InputStreamReader(conn.getInputStream()))想到的∙Java I/O总结——OutputStream∙Java I/O总结——Reader∙Java I/O总结——Writer∙Java I/O总结——补充说明从new BufferedReader(new InputStreamReader(conn.getInputStream()))想到的从new BufferedReader(new InputStreamReader(conn.getInputStream()))想到的?晚上睡在床上,这一小段代码在我的脑海里不断浮现,因为它 看上去有些相似(在设计模式中的看到过类似),但是实在想不起与那个模式相似了?翻开设计模式书,已经好久没有看到过本书了,说实话对这本书中的大多数还不是很了解,但是此刻看到能让我想到了,说明这个模式给我留下了深刻的影 响。

翻开书找了半天,我一直以为是Strategy,后来看了下不是的,从头看到尾,终于找到了Decorator(装饰)。

把这个设计模式又仔细读了一 遍,在这里与大家分享。

设计意图动态地给一个对象添加一些额外的职责,就增加功能来说,Decorator模式相比较生产子类更为灵活。

设计动机有时候我们希望给某个对象增加而不是整个类增加一些功能,例如,给一个图像界面工具箱允许你对人员一个用户界面的组件添加一些特性,比如说边框,或者窗口滚动。

使用继承机制是添加功能的一种有效途径,从其他类继承过来的边框特性可以被多个子类的实例所实现。

但是这种方法不够灵活,因为边框的选择是静态的,用户不能控制对组件加边框的方式和时机。

一种较为灵活的方式是将组件嵌入另外一个对象中,由这个对象添加边框,我们称这个嵌入的对象为装饰。

结构代码部分我们就不详细说明,如下图所示:这张图当时好象是我学习设计模式中,看的最清楚的一张(难得啊,设计模式中的那么多图,很多当时看的时候都不是很明白),当然这张图不是我最在意的。

Java程序设计知到章节答案智慧树2023年信阳农林学院

Java程序设计知到章节答案智慧树2023年信阳农林学院

Java程序设计知到章节测试答案智慧树2023年最新信阳农林学院第一章测试1.Java程序中的注释有哪几种?参考答案:/* 多行注释 */;//单行注释;/** 文档注释 */2.以下选项中,哪些属于JDK工具?参考答案:Java运行工具;Java编译器;Java打包工具;Java文档生成工具3.以下关于支持Java运行平台的叙述,哪项错误?参考答案:Java语言与平台无关。

Java程序的运行结果依赖于操作系统4.下面哪种类型的文件可以在Java虚拟机中运行?参考答案:.class5.JDK、JRE和JVM之间的关系是()参考答案:JDK包括JRE,JRE包括JVM第二章测试1.下列代码执行后,输出到控制台的内容是?public class Test{public static void main(String args[]){int m=6789;int[] a=new int[4];for(int i=0;i<a.length;i++){a[i]=m%10;m=m/10;}System.out.printf("%d%d%d%d",a[0],a[1],a[2],a[3]);}}参考答案:98762.下列代码执行后,输出到控制台的内容是?public class Test{public static void main(String args[]){int m=100,n=10;if (m>n){n=100;m=10;}elsen=-100;m=-99;System.out.printf("%d:%d",m,n);}}参考答案:-99:1003.下列ABCD注释标注的哪行代码有错误?public class Test{public static void main(String args[]){int a[] ={1,2,3,4}; //Afor(int n=0;n<a.length;n++){ //BSystem.out.println(a[n]);}for(int i:a){ //CSystem.out.println(i);}int m=0;for(m:a){ //DSystem.out.println(m);}}}参考答案:D4.下列ABCD注释标注的哪行代码有错误?public class Test{public static void main(String args[]){int m=12;int n=12;int number=100+'w'; //Aswitch(number){case 12:n++; //Bcase 100:n--; //Cbreak;case n: m++; //D}}}参考答案:D5.下列语句序列执行后,k 的值是()。

java基础教程第3版习题解答

java基础教程第3版习题解答

Java基‎础教程第3‎版习题解答‎第一章习题‎1. James‎Gosli‎n g2.需3个步骤‎:1)用文本编辑‎器编写源文‎件2)使用jav‎a c编译源‎文件,得到字节码‎文件3)应用程序使‎用解释器运‎行。

3. path d:\jdk\binclass‎p ath =d:\jdk\jre\lib\rt.jar;.;4. B5. java 和class‎6.D。

第二章习题‎1.用来标识类‎名、变量名、方法名、类型名、数组名、文件名的有‎效字符序列‎称为标识符‎。

标识符由字‎母、下划线、美元符号和‎数字组成,第一个字符‎不能是数字‎。

fal se‎不是标识符‎。

2.关键字就是‎Java语‎言中已经被‎赋予特定意‎义的一些单‎词,不可以把关‎键字作为名‎字来用。

不是关键字‎。

cl ass‎i mple‎m ents‎i nter‎face enum exten‎d s abstr‎a ct。

3.float‎常量必须用‎F或f为后‎缀。

doubl‎e常量用D‎或d为后缀‎,但允许省略‎后缀。

4.一维数组名‎.lengt‎h。

二维数组名‎.l engt‎h。

5. C6.ADF7. B8 【代码2】【代码3】【代码4】9.B。

10.属于操作题‎,解答略。

11.3,112.publi‎c class‎E {publi‎c stati‎c void main(Strin‎g args[]) {Syste‎m.out.print‎l n((int)'你');Syste‎m.out.print‎l n((int)'我');Syste‎m.out.print‎l n((int)'他');}}13.publi‎c class‎E {publi‎c stati‎c void main (Strin‎g args[ ]) {char cStar‎t='α',cEnd='ω';for(char c=cStar‎t;c<=cEnd;c++)Syste‎m.out.print‎(" "+c);}}第三章习题‎1. 1102.beep!!3.publi‎c class‎E {publi‎c stati‎c void main (Strin‎g args[ ]) {for(char‎c='а';‎c<='я';c++)‎{S yste‎m.out.print‎(" "+c);}}}4.publi‎c class‎ Xiti3‎_4{ publi‎c s tati‎c void main(Strin‎g args[]) { doubl‎e sum=0,a=1;int i=1;while‎(i<=20){ sum=sum+a;i++;a=a*i;}Syste‎m.out.print‎ln("sum="+sum);}}5.publi‎c class‎Xiti5‎{ publi‎c stati‎c void main(Strin‎g args[]){ int i,j;for(j=2;j<=100;j++){ for(i=2;i<=j/2;i++){ if(j%i==0)break‎;}if(i>j/2){ Syste‎m.out.print‎(" "+j);}}}}6.class‎ Xiti6‎{ publi‎c s tati‎c void main(Strin‎g args[]){ doubl‎e sum=0,a=1,i=1;do { sum=sum+a;i++;a=(1.0/i)*a;}while‎(i<=20);Syste‎m.out.print‎ln("使用do-while‎循环计算的‎s um="+sum);for(sum=0,i=1,a=1;i<=20;i++){ a=a*(1.0/i);sum=sum+a;}Syste‎m.out.print‎ln("使用for‎循环计算的‎s um="+sum);}}7.class‎ Xiti7‎{ publi‎c s tati‎c void main(Strin‎g args[]){ int sum=0,i,j;for(i=1;i<=1000;i++){ for(j=1,sum=0;j<i;j++){ if(i%j==0)sum=sum+j;}if(sum==i)Syste‎m.out.print‎ln("完数:"+i);}}}8.impor‎t java.util.*;publi‎c class‎E {publi‎c stati‎c void main (Strin‎g args[ ]) {int m,n;Scann‎e r scane‎r= new Scann‎e r(Syste‎m.in);Syste‎m.out.print‎ln("输入正数m‎回车确认");m = scane‎r.nextI‎n t();Syste‎m.out.print‎ln("输入正数n‎回车确认");n = scane‎r.nextI‎n t();int p=m;int q= n;int r = m%n;while‎(r!=0) {m = n;n =r;r =m%n;}Syste‎m.out.print‎ln(p+"和"+q+"的最大公约‎数"+n);Syste‎m.out.print‎ln(p+"和"+q+"的最小公倍‎数"+(p*q)/n);}}9.publi‎c class‎E{ publi‎c stati‎c void main(Strin‎g args[]){ int n=1;long sum=0;while‎(true){ sum=sum+n;n++;if(sum>=8888)break‎;}Syste‎m.out.print‎ln("满足条件的‎最大整数:"+(n-1));}}第四章习题‎1.用该类创建‎对象时。

Java自学第10期——File类与IO流(输入输出流、处理流、转换流、缓冲流、Prope。。。

Java自学第10期——File类与IO流(输入输出流、处理流、转换流、缓冲流、Prope。。。

Java⾃学第10期——File类与IO流(输⼊输出流、处理流、转换流、缓冲流、Prope。

1、IO简介IO(输⼊输出)通过java.io包下的类和接⼝来⽀持,包下包括输⼊、输出两种IO流,每种输⼊输出流⼜可分为字符流和字节流两⼤类。

2、File类File类是io包下与平台⽆关的⽂件和⽬录,File能新建、删除、重命名⽂件和⽬录,不能访问⽂件本⾝,后者需要使⽤输⼊输⼊流。

2.1 构造⽅法File类的构造⽅法:File(File parent, String child) 参数:⽗路径,⼦路径根据 parent 抽象路径名和 child 路径名字符串创建⼀个新 File 实例。

File(String pathname)通过将给定路径名字符串转换为抽象路径名来创建⼀个新 File 实例。

File(String parent, String child)根据 parent 路径名字符串和 child 路径名字符串创建⼀个新 File 实例。

File(URI uri)通过将给定的 file: URI 转换为⼀个抽象路径名来创建⼀个新的 File 实例。

2.2 静态⽅法File类静态⽅法:static String pathSeparator()与系统有关的路径分隔符,为了⽅便,它被表⽰为⼀个字符串。

static char pathSeparatorChar()与系统有关的路径分隔符。

static String separator()与系统有关的默认名称分隔符,为了⽅便,它被表⽰为⼀个字符串。

static char separatorChar()与系统有关的默认名称分隔符。

2.3 常⽤⽅法:2.3.1 获取相关public String getAbsolutePath()返回此File的绝对路径名字符串。

public String getPath()将此File转换为路径名字符串。

public String getName()返回由此File表⽰的⽂件或⽬录的名称。

java程序设计基础第三版

java程序设计基础第三版Java程序设计基础第三版Java是一种广泛使用的编程语言,以其跨平台的特性、面向对象的特性、健壮性、安全性和性能而闻名。

《Java程序设计基础》第三版是对Java语言的深入介绍,适合初学者和有一定编程基础的读者。

本版书籍在前两版的基础上,更新了Java语言的最新发展,并增加了一些实用的编程技巧。

第一章:Java语言概述Java语言由Sun Microsystems公司(现为Oracle公司)在1995年发布。

Java是一种纯面向对象的语言,这意味着在Java中,所有的数据都是对象。

Java的设计哲学是“一次编写,到处运行”(Write Once, Run Anywhere),这得益于它的虚拟机(JVM)技术。

第二章:Java开发环境搭建在开始Java编程之前,需要安装Java开发工具包(JDK),并配置环境变量。

此外,还可以使用集成开发环境(IDE)如Eclipse或IntelliJ IDEA来提高开发效率。

第三章:基本语法Java的基本语法包括数据类型、变量、运算符、控制语句等。

Java是强类型语言,所有变量在使用前必须声明其类型。

Java提供了丰富的控制语句,如if-else、switch、while、for等。

第四章:面向对象编程面向对象编程(OOP)是Java的核心特性。

本章介绍了类和对象的概念,以及如何使用类来封装数据和行为。

此外,还介绍了继承、多态和接口等OOP的基本概念。

第五章:数组和字符串数组是Java中存储固定大小的同类型元素的集合。

字符串是字符的序列,Java提供了String类来处理字符串,包括字符串的创建、连接、比较等操作。

第六章:集合框架Java集合框架提供了一套接口和类,用于存储和操作对象集合。

包括List、Set、Map等接口,以及ArrayList、HashSet、HashMap等实现类。

第七章:异常处理Java使用异常处理机制来处理程序运行时出现的错误。

java学习第10章PPT教学课件

由调度程序调用,当run()方法返回时, 该线程停止
使调用它的线程立即停止执行
使线程睡眠n毫秒,n毫秒后,线程可以 再次运行
使线程挂起,暂停运行Not Runnable
恢复挂起的线程,使处于可运行状态 Runnable
将CPU控制权主动移交到下一个可运行 线程
2、Thread类的主要方法
setName(String) getName() getPriority() setPriority(int) join()
赋予线程一个名字
取得由setName()方法设置的线程名字的 字符串
返回线程优先级
设置线程优先级
当前线程等待调用该方法的线程结束后, 再往下执行
setDaemon(boole an )
设置该线程是daemon线程还是用户线程, Daemon线程也称服务线程,通常编 成无限循环,在后台持续运行。
例10-1 直接继承Thread类实现多线程
第10章 多线程机制
1.1 Java线程的概念 1.2 Java多线程编程方法 1.3 线程的控制 1.4 线程资源的同步处理
1.多进程
多进程的缺点: • 进程切换开销大; • 进程间的通信很不方便。
2.多线程
• 多线程则指的是在单个程序中可以同时运行多个 不同的线程,执行不同的任务
• 线程切换的开销小 。
例10-2 计数按钮的设计
import java.applet.*; import java.awt.*; class countbutton extends Button implements Runnable {
int count=0; public countbutton(String s) { super(s); } public void run() {

【黑马程序员】Java IO流学习总结

【黑马程序员】Java IO流学习总结Java流操作有关的类或接口:Java流类图结构:流的概念和作用流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。

即数根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。

IO流的分类•根据处理数据类型的不同分为:字符流和字节流•根据数据流向不同分为:输入流和输出流字符流和字节流字符流的由来:因为数据编码的不同,而有了对字符进行高效操作的流对象。

本质节流和字符流的区别:•读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映•处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能结论:只要是处理纯文本数据,就优先考虑使用字符流。

除此之外都使用字节流。

输入流和输出流对输入流只能进行读操作,对输出流只能进行写操作,程序中需要根据待传输数据Java IO流对象1.输入字节流InputStream IO 中输入字节流的继承图可见上图,可以看出:1 InputStream 是所有的输入字节流的父类,它是一个抽象类。

2 ByteArrayInputStream、StringBufferInputStream、FileInputStream 是三种基本的介质流,它本地文件中读取数据。

PipedInputStream 是从与其它线程共用的管道中读取数据,与P 3 ObjectInputStream 和所有FilterInputStream 的子类都是装饰流(装饰器模式的主角)。

2.输出字节流OutputStreamIO 中输出字节流的继承图可见上图,可以看出:1 OutputStream 是所有的输出字节流的父类,它是一个抽象类。

2 ByteArrayOutputStream、FileOutputStream 是两种基本的介质流,它们分别向Byte 数组、PipedOutputStream 是向与其它线程共用的管道中写入数据,3 ObjectOutputStream 和所有FilterOutputStream 的子类都是装饰流。

java复习提纲

2009级java复习提纲题型:选择题(15*2 ),填空题(10*1),判断题(10*1),程序分析题(4*5+10(改错题)),编程题(2*10)第一章概述1.Java源文件的命名规则2.java Application的保存,编译,执行3. main()方法及其各个参数的含义(在其他章中讲述)第二章 java语言基础1.各基本数据类型及取值范围第三章类的封装、继承与多态1. 构造方法的定义及调用2.方法的声明与调用3.方法的重载与重写4.继承的定义及使用规则(父类、子类间的关系及应用,子类、父类构造方法的执行)5.包的定义、创建及使用6.this,super关键字的使用7.实例方法与静态方法的区别及使用8.实例变量及静态变量的区别及使用9.局部变量及成员变量的有效区域及引用10. 类成员的限定词以及相应的调用范围第四章接口内部类1.String类中常用方法(讲过的为主)2.接口的定义,接口的声明及使用(讲课课件3.8 接口)3. StringBuffer类的常用的方法4.Math类的常用方法(在其他章中讲述)第五章异常处理1.异常的处理方法 throws throw2. try-catch-finally语句的使用及理解3. Throwable类的两个子类第六章 AWT 事件处理(3个改错、1个编程)1.组件类的主要方法2.容器类的主要方法3.窗口和面板的使用及主要方法4. 窗口和对话框的使用及主要方法5.标签的使用主要方法6.文本行的使用主要方法7.按钮的主要方法8.各布局管理器的定义及使用方法(布局方式)9.菜单条、菜单、菜单项之间的区别及使用方法10.AWT组件类中注册事件监听器的方法11.AWT事件监听器接口及其方法(窗口、按钮、鼠标移动、鼠标、键盘、焦点)12.Frame容器和对话框的区别setVisible(true); TRUE, false true第七章多线程 (一个大题)1. 线程对象的生命周期2. Runnable接口和Thread类的应用3. 线程的同步机制4. 线程休眠5.线程的常用方法第八章1.Applet程序的编译及执行 javac java appletviewer2.Applet的定义及Html中的Applet标记3.Applet的生命周期以及与生命周期有关的四个方法第九章输入输出流和文件操作1. java.io包中的4个基本类2.流的分类以及对应的输入\输出流类及其方法的应用第十章网络通信1.了解InetAddress类、URL类、URLConnection类的使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c:\myprog\data\temp.dat
boolean
exists() :判断文件是否存在 long length():获取文件字节数 boolean canRead():判断文件可读性 boolean canWriter():判断文件可写性

boolean equals(File file):比较文件或目录 boolean isFile() 判断是文件还是目录 boolean isDirectiry() boolean renameTo(File file):文件重命名 delete():删除文件
path =“c:\jdk1.4\example” File file1=new File(path,”1.txt”) File file2=new File(path,”2.txt”)
File
dir1=new File(“c:\\java\\example”) File file1=new File(dir1,”1.txt”)
2、文件流的建立
FileInputStream
打开一个输入文件 FileInputStream in=new FileInputStream(fp); FileOutputStream out=new FileOutputStream(fp);
FileOutputStream 打开一个输出文件
10.3.2 文件对象
File f=new File(“data”,temp.dat”); f.getName(): 返回文件名 temp.dat f.getParent():返回文件所在目录名 data f.getPath(): 返回文件路径
data\temp.dat
f.getAbsolutePath():返回绝对路径
第10章 JAVA I/O系统
教学内容
输入输出类库 标准输入输出 文件操作
引入
什么是数据流? 字节流和字符流的基类各是什么?
10.1 输入输出类库
10.1.1 流 几个概念:流 输入流/输出流 位流/字符流
程序
数据
数据
输入流 键盘 输出流 显示器 打印机
10.1.2 输入输出流类
Writer类中常用子类继承关系 Writer PrintWriter BufferedWriter OutputStreamReader FileWriter
ntStream类
PrintStream类的方法有:




Write Flush checkError Print Println close
10.3
File
10.3
File
10.3.1三个构造方法: File(String path);
绝对路径:从根目录开始的路径。 相对路径:从当前目录开始的路径。
File(File
path,String name); File(String dir,String name);
String
注意(每当main方法被执行时,就自动生成上述三个对象)
例2
public class ReadHello { public static void main(String args[]) { char c; System.out.println(“Enter a character:”); try{c=(char)System.in.read(); System.out.println(“ “+ c); }catch(IOException e) { System.out.println(“Error reading from user”); } 运行结果为? } }
从流中读入数据 跳过流中若干字节数 返回流中可用字节数 在流中标记一个位置 返回标记过得位置 关闭流
markSupport():是否支持标记和复位操作
read()
int
read():
读一个整数
int

read(byte b[]):
读多个字节到数组中
int read(byte,int off,int len); 从输入流读取最多len字节数据存入缓冲区 b中,并且所读取数据从数组b的第off个位置开 始存放
write(int
定的位置开始len长度的数据输出到流中
flush():将缓冲区中的数据强制送出
close():关闭流
OutputStream类中常用子类继承关系
OutputStream
FileOutputStream FilterOutputStream PrintStream DataOutputStream BufferedOutputStream
try{ System.out.print(" 输入字节:"); count = bufin.read(input);
//将键盘输入的字节放入字节输入缓冲数组input中
System.out.println("您输入的字节个数: " + count); System.out.print("您输入的字符串为: " ); bufout.write(input,0,count);
思考
为什么输入的是字符,输出是乱码? 原因:System.out.println(bArray)输出的是 数组 的地址而不是字符 改进:将字符数组变换成字符串 原来是:System.out.println(bArray); 现在为:String s=new String(bArray,0); System.out.println(s);
其中println可以输出多种形式的数据,例如: println(String s), println(char c)等 (注意:println与print区别)
10.2 System类
输入输出方法
System类管理标准输入输出流和错误流 System.out 把输出送到缺省的显示(通常是显示器) System.in 从标准输入获取输入(通常是键盘) System.err 把错误信息送到缺省的显示
//将input中的所有字节写到字节输出缓冲数组中 bufout.flush(); //将字节输出缓冲数组内容输出
FileOutputStream fileout= new FileOutputStream("1.txt",true);
//创建文件字节输出流对象fileout,参数为文件名"a.txt"
InputStream类中常用子类继承关系
InputStream
FileInputStream FilterInputStream DataInputStream BufferedInputStream
2、OutputStream类
b):将一个整数输出到流中 write(byte b[]):将数组中的数据输出到流中 write(byte b[], int off,int len):将数组b中从off指
}
3、Reader
int
read() int read(char array[])
Reader类中常用子类继承关系 Reader BufferedReader InputStreamReader FileReader
4、Writer
writer() void writer(int c) void writer(char array[]) flush() close()
例3
import java.io.*; class IOTest { public statics void main(String args[]) {try { byte bArray[]=new byte[128]; System.out.println(“Enter something:”); System.in.read(bArray); System.out.print(“You entered:”); System.out.println(bArray); }catch(IOException ioe) { System.out.println(ioe.toString()); } }
fileout.write(input,0,count);
//将input中的所有字节写到对象fileout中
bufin.close();
bufout.close();
//关闭缓冲字节输入流 //关闭缓冲字节输出流
fileout.close(); //关闭文件字节输出流
} catch(IOException e) { System.out.println("I/O错误"); } }
例1
import java.io.*; public class TestOutputStream { public static void main(String args[]) { int count; byte input[] = new byte[256]; //用于字节输入缓冲的数组 String s; BufferedInputStream bufin = new BufferedInputStream(System.in); //用键盘输入创建缓冲字节输入流对象bufin BufferedOutputStream bufout =new BufferedOutputStream(System.out); //用屏幕输出创建缓冲字节输出流对象bufout
InputStream OutputStream
10.1.2 输入输出流类
Java中每一种流的基本功能依赖于基本

InputStream OutputStream
它们是抽象类,不能直接使用
相关文档
最新文档