教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 法律文档 >

Java面向对象程序设计第2版第12章_输入输出流

来源:网络收集 时间:2026-09-08
导读: 《Java面向对象程序设计》第2版 第12章 输入输出流 Power point 制作:耿祥义 张跃平配合 Java面向对象程序设计第2版 例子源代码一起使用 2014-10-14 导读主要内容 文件字节流与文件字符流 缓冲流 随机流 数组流 数据流 对象流 序列化与对象可隆 文件锁 使用

《Java面向对象程序设计》第2版 第12章

输入输出流

Power point 制作:耿祥义 张跃平配合< Java面向对象程序设计>第2版 例子源代码一起使用

2014-10-14

导读主要内容 文件字节流与文件字符流 缓冲流 随机流 数组流 数据流 对象流 序列化与对象可隆 文件锁 使用Scanner解析文件 难点 序列化与对象可隆 使用Scanner解析文件2014-10-14 2

概述输入、输出流提供一条通道程序,可以使用这条通道 读取源中的数据或把数据传送到目的地。把输入流的指 向称作源,程序从指向源的输入流中读取源中的数据; 而输出流的指向是数据要去的一个目的地,程序通过向 输出流中写入数据把数据传送到目的地。

2014-10-14

§12.1 File类 File 对象主要用来获取文件本身的一些信 息,不涉及对文件的读写操作。 创建一个File对象的构造方法有3个:File(String filename); File(String directoryPath,String filename); File(File f, String filename);

例题12-1

2014-10-14

§12.1.1 文件的属性File类的下列方法获取文件本身的一些信息。 public String getName() 获取文件的名字。 public boolean canRead() 判断文件是否是可读的。 public boolean canWrite() 判断文件是否可被写入。 public boolean exits() 判断文件是否存在。 public long length() 获取文件的长度(单位是字节)。 public String getAbsolutePath() 获取文件的绝对路径。 public String getParent() 获取文件的父目录。 public boolean isFile() 判断文件是否是一个普通文件,而不是目录。 public boolean isDirectroy() 判断文件是否是一个目录。 public boolean isHidden() 判断文件是否是隐藏文件。 public long lastModified() 获取文件最后修改的时间。

2014-10-14

§12.1.2 目录 1.public boolean mkdir() 创建目录 2.列出目录中的文件public String[] list() 用字符串形式返回目录下的全部文件。 public File [] listFiles() 用File对象形式返回目录下的全部文件。

3.列出目录下指定类型的文件public String[] list(FilenameFilter obj) 用字符串形式返回目录下的 指定类型的所有文件。 public File [] listFiles(FilenameFilter obj) 用 File 对象形式返回目 录下的指定类型所有文件。 4.上述两方法的参数FilenameFilter是一个接口,该接口有一个方法: public boolean accept(File dir,String name);

例题12-2

2014-10-14

§12.1.3 文件的创建与删除 当使用File类创建一个文件对象后,例如File file=new File("c:\\myletter","letter.txt"); ◆如果c:\myletter目录中没有名字为letter.txt文件,文

对象file调用方法 public boolean createNewFile(); 可以在c:\myletter目录中建立一个名字为 letter.txt的文 件。 ◆文件对象调用方法 public boolean delete() 可以删除当前

文件,例如:file.delete();

2014-10-14

§12.1.4 运行可执行文件 ◆用Runtime 类声明一个对象( Runtime类在http://doc.guandang.netng包) Runtime ec; ◆ 然后使用该类的getRuntime()静态方法创建这个对象:ec=Runtime.getRuntime();

◆ ec可以调用exec(String command)方法打开本地机的可 执行文件或执行一个操作。例题12-3

2014-10-14

§12.2 文件字节流 如果程序对文件的操作比较简单,比如只 是顺序地读写文件,那么就可以使用 FileInputStream 和 FileOutputSream 类创建的 流对文件进行读写操作。

2014-10-14

§12.2.1 文件字节输入流1.创建文件字节输入流 FileInputStream类创建的对象被称作文件字节输入流。 ◆构造方法:FileInputStream(String name); FileInputStream(File file); ◆读取一个名为hello.txt的文件,建立一个文件输入流对象,如下所示:try { FileInputStream in = new FileInputStream("hello.txt"); } catch (IOException e) { System.out.println("File read error:"+e ); }

2.以字节为单位读文件 read方法的格式如下:int read(); int read(byte b[]); int read(byte b[],int off,int len);

例题12-42014-10-14 10

§12.2.2 文件字节输出流1.创建文件字节输出流 FileOutputStream类创建的对象被称作文件字节输出流。 ◆构造方法:FileOutputStream(String name) FileOutputStream(File file)

2.以字节为单位写文件 read方法的格式如下:public void write(byte b[]); public void write(byte b[],int off,int len);

例题12-5

2014-10-14

§12.2.3 关闭流close()方法

◆如果没有关闭那些被打开的流,那么就可能不允许 另一个程序操作这些流所用的资源。 ◆保证操作系统把流缓冲区的内容写到它的目的地。

2014-10-14

§12.3 文件字符流

1 . FileReader 和 FileWriter 用来创建文件字符输入、输出流, 构造方法:FileReader(String filename); FileReader(File filename); FileWriter (String filename); FileWriter (File filename);

2.字符输入流和输出流的 read和write方法以字符为基本单位 处理数据。int read() 字符输入流调用该方法从源中读取一个字符。 int read(char b[]) 字符输入流调用该方法从源中试图读取 b.length 个字符到字符数组b中。

int read(char b[], int off, int len)

字符输入流调用该方法从源中试图读

取len个字符并存放到字符数组b中。 void write(int n) 字符输出流调用该方法向文件写入一个字符。 void write(char b[]) 字符输出流调用该方法向文件写入一个字符数组。 void write(char b[],int off,int length) 字符输出流调用该方法把从字符数组 中起始于偏移量off处取出的len个字符写到文件。

例题12-62014-10-14 13

§12.4

缓冲流

1.BufferedReader和BufferedWriter类创建的对象称作缓冲 输入、输出流。二者的源和目的地必须是字符输入流和字符输出 流。

构造方法:BufferedReader(Reader in); BufferedWriter (Writer out);

2. BufferedReader和BufferedWriter类读写文件的方法:readLine() BufferedReader流读取文本行 write(String s,int off,int len)BufferedWriter流把字符串s写到文件中 newLine(); BufferedWriter流向文件写入一个回行符

例题12-7

2014-10-14

§12.5 文件对话框在学习了有关文件输入、输出流之后,就可以使用 文件对话框方便地打开和保存文件。例题12-8

2014-10-14

§12.6 随机流使用RandomAccessFile类来创建一个随机访问文件 流。RandomAccessFile类创建的流的指向既可以作为源 也可以作为目的地。构造方法: RandomAccessFile(String name,String mode) ; RandomAccessFile(File file,String mode) ;

◆相关方法:seek(long a) 定位RandomAccessFile流的读写位置 getFilePointer() 获取流的当前读写位置

例题12-9

◆表12.1 RandomAccessFile类的常用方法 ◆ 处理 readLine() 方法在读取含有非 ASCII 字符的文件时出现“乱码”现象的方法: 1.读取 String str=in.readLine(); 2.用“iso-8859-1” …… 此处隐藏:2537字,全部文档内容请下载后查看。喜欢就下载吧 ……

Java面向对象程序设计第2版第12章_输入输出流.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/1413623.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)