Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作

上传人:E**** 文档编号:89347045 上传时间:2019-05-23 格式:PPT 页数:79 大小:506.50KB
返回 下载 相关 举报
Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作_第1页
第1页 / 共79页
Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作_第2页
第2页 / 共79页
Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作_第3页
第3页 / 共79页
Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作_第4页
第4页 / 共79页
Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作_第5页
第5页 / 共79页
点击查看更多>>
资源描述

《Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作》由会员分享,可在线阅读,更多相关《Java实践教程 教学课件 ppt 作者 吴仁群 C07输入输出及数据库操作(79页珍藏版)》请在金锄头文库上搜索。

1、第7章 输入输出及数据库操作,7.1 输入和输出 7.2 数据库操作,7.1 输入和输出,7.1.1 流的含义 7.1.2 流的层次结构 7.1.3 标准输入输出 7.1.4 File类 7.1.5 FileInputStream类和FileOutputStream类 7.1.6 DataInputStream类和DataOutputStream类 7.1.7 随机访问文件 7.1.8 Reader类和Writer类 7.1.9 IOException类的几个子类,7.1.1 流的含义,流 是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或

2、是网络连接。类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流。这时候你就可以想象数据好像在这其中“流”动一样,如下图7-1:,图7-1 流,数据流是指一组有顺序的、有起点的和终点的字节集合 Java将读取数据的对象称为输入流;能向其写入数据的对象称为输出流。 字节流,被称作输入流(Input stream)或输出流(Output stream),基于数据的I/O是二进制(比如说表示图像的位图) 字符流,被称作Reader或Writer,基于文本的I/O都是一些人们能够阅读的字符(比如说程序的源代码,字符流,InputStream,OutputStream,Reader,Writer

3、是四个抽象类。Java中其他多种多样变化的流均是由它们派生出来的。在这四个抽象类中,InputStream和Reader定义了完全相同的接口: int read() int read(char cbuf) int read(char cbuf, int offset, int length) 而OutputStream和Writer也是如此: int write(int c) int write(char cbuf) int write(char cbuf, int offset, int length),7.1.2 流的层次结构,InputStream和OutputStream流层次结构如图

4、7-2和图7-3所示 Reader和Writer流层次结构如图7-4和图7-5所示,图7-2 InputStream输入流层次结构,图7-3 OutputStream输出流层次结构,图7-4 Reader流层次结构,Reader,图7-5 Writer流层次结构,Writer,7.1.3 标准输入输出,标准输入输出都是System类中定义的类成员变量,包括: System.in:代表标准输入流,默认状态对应于键盘输入。 System.out:代表标准输出流,默认状态对应于屏幕输出。 System.err:代表标准错误输出流,默认状态对应于屏幕输出。,【实例8-1】 import java.io

5、.*; class stdIOExample1 public static void main(String args) throws IOException int ch; int count = 0; System.out.println(“请输入字符(当输入0时退出!)“); while (char)(ch = System.in.read() != 0) /输入字符 count+; System.out.print(char)ch); /输出字符 System.out.println(); System.err.println(“counted “ + count + “ total

6、bytes.“); 说明:在本实例中,利用System.in.read()不断从键盘输入字符,并在显示屏输出,count用于累计输入字符个数,当输入字符为0时,输入终止。,7.1.4 File类,含义: File类与InputStream / OutputStream类同属于一个包,它不允许访问文件内容。File类主要用于命名文件、查询文件属性和处理文件目录。 1File类的构造方法 public File(String name):指定与File对象关联的文件或目录的名称,name可以包含路径信息及文件或目录名。 例如: File myFile; MyFile= new File(“D:WU

7、abc.txt”),1File类的构造方法 public File(String pathName,String name):使用参数pathName(绝对路径或相对路径)来定位参数name所指定的文件或目录。 例如: File myFile; MyFile= new File(“D:WU”,“abc.txt”);,1File类的构造方法 public File(File directory,String name):使用现有的File对象directory(绝对路径或相对路径)来定位参数name所指定的文件或目录。 例如: File myDir=new File(“D:WU”); MyFil

8、e= new File(myDir,“abc.txt”); public File(URI rui):使用给定的同一资源定位符来定位文件。,2File类常见方法 String getName(); 得到一个文件的名称(不包括路径) String getPath(); 得到一个文件的路径名 String getAbsolutePath(); 得到一个文件的绝对路径名 String getParent(); 得到一个文件的上一级目录名 String renameTo(FilenewName); 将当前文件名更名为给定文件的完整路径 booleanexists(); 测试当前File对象所指示的文件

9、是否存在 booleancanWrite(); 测试当前文件是否可写 booleancanRead(); 测试当前文件是否可读,2File类常见方法 boolean isFile(); 测试当前文件是否是文件(不是目录) boolean isDirectory(); 测试当前文件是否是目录 longlastModified(); 得到文件最近一次修改的时间 longlength(); 得到文件的长度,以字节为单位 booleandelete(); 删除当前文件 booleanmkdir(); 根据当前对象生成一个由该对象指定的路径 Stringlist(); 列出当前目录下的文件,【实例8-3

10、】 import java.io.*; public class fileTest void listAttributes(String fileName) File f=new File(fileName); if( f.exists( ) ) System.out.println(“Attributes of “+fileName); System.out.println(“Exist: “+f.exists(); System.out.println(“Can read: “+f.canRead(); System.out.println(“Can write: “+f.canWrite

11、(); System.out.println(“Is file: “+f.isFile(); System.out.println(“Is director: “+f.isDirectory(); System.out.println(“Is absolute path: “+f.isAbsolute(); else System.out.println(fileName+“ does not exist!“); ,【实例8-3】 public static void main(String args ) if(args.length!=1) System.out.println(“Usage

12、: java fileTest “); System.exit(1); fileTest obj=new fileTest ( ); obj.listAttributes(args0); ,编译完毕后,按照如下方式运行: g:java01java fileTest fileTest.java 则得到如下结果: Attributes of fileTest.java Exist: true Can read: true Can write: true Is file: true Is director: false Is absolute path: false,7.1.5 FileInputS

13、tream类和 FileOutputStream类,1FileInputStream类 FileInputStream典型地表示一种顺序访问的文本文件,可以访问文件的一个字节、几个字节或整个文件。 基本步骤: 步骤一:利用FileInputStream打开文件。 FileInputStream myFileStream; myFileStream= new FileInputStream(“D:WU”,“abc.txt”) 或者 File myFile; FileInputStream myFileStream; myFile= new File(“D:WUabc.txt”) myFileSt

14、ream= new FileInputStream(myFile),1FileInputStream类 步骤二:使用方法read()读取信息。 int read() int read(byte input) int read(byte input,int offset,int length) 步骤三:读取完毕后要关闭FileInputStream对象。 myFileStream.close(),1FileInputStream类 FileInputStream类常用方法: public abstract int read( ) public int read(byte b ) public i

15、nt read(byte b , int off, int len) 。 public int available( ) public long skip(long n) public int close( ),【实例8-4】 import java.io.*; public class FileInputStreamExample public static void main(String args) throws IOException String fname=“FileInputStreamExample.java“; try FileInputStream rf = new Fil

16、eInputStream(fname); int n=16; byte buffer = new byten; while (rf.read(buffer,0,n)!=-1) ,【实例8-4】 System.out.println(); rf.close(); /关闭输入流 catch (IOException ioe) System.out.println(ioe); catch (Exception e) System.out.println(e); ,2FileOutputStream类 FileOutputStream类用来处理以文件作为数据输出目的数据流 基本步骤包括: 步骤一:利用FileOutputStream打开文件。 FileOutputStream myFileStream; myFileS

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

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