- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 文件(IO)操作 10.1 File 类 File类是IO包中唯一代表磁盘文件本身的对象,它定义了一些与平台无关的方法来操纵文件。通过调用File类提供的各种方法,能够完成创建、删除文件,重命名文件,判断文件的读/写权限及文件是否存在,设置和查询文件的最近修改时间等操作。Java能正确处理UNIX和Windows/DOS约定的路径分隔符。如果在Windows版本的Java下用斜线(?/?),则路径处理依然正确。如果Windows/DOS使用反斜线(?\?)的约定,则需要在字符串内使用它的转义序列(?\\?)。Java约定用UNIX和URL风格的斜线来作路径分隔符。 下面的构造方法可以用来生成File对象: File(String directoryPath) 这里directoryPath是文件的路径名。 File定义了很多获取File对象标准属性的方法。例如,getName()用于返回文件名,getParent()返回父目录名,exists()方法在文件存在的情况下返回true,反之返回false。然而File类是不对称的,也就是说虽然存在可以验证一个简单文件对象属性的很多方法,但是没有相应的方法来改变这些属性。下例说明了File的几个方法。 【例10-1】 FileDemo.java。 10.2 RandomAccessFile类 RandomAccessFile类可以说是Java语言中功能最为丰富的文件访问类,它提供了众多文件访问方法。Random AccessFile类支持“随机访问”方式,可以跳转到文件的任意位置处读/写数据。在要访问一个文件的时候,不想把文件从头读到尾,而是希望像访问一个数据库一样访问一个文本文件,这时使用RandomAccessFile类就是最佳选择。 RandomAccessFile对象类有个位置指示器,指向当前读/写处的位置,当读/写n个字节后,文件指示器将指向这n个字节后的下一个字节处。刚打开文件时,文件指示器指向文件的开头处,可以移动文件指示器到新的位置,随后的读/ 写操作将从新的位置开始。RandomAccessFile在随机(相对顺序而言)读取数据等长记录格式文件时有很大的优势,但该类仅限于操作文件,不能访问其他IO设备。 有关RandomAccessFile类中的成员方法及使用说明请参阅JDK文档。下面是一个使用RandomAccessFile的例子,该例中向文件中写入三名员工的信息,然后按照第二名员工、第一名员工、第三名员工的先后顺序读出。RandomAccess File可以以只读或读/写方式打开文件,具体使用哪种方式取决于用户创建RandomAccessFile类对象的构造方法: new RandomAccessFile(f,rw); // 读/写方式 new RandomAccessFile(f,r); // 只读方式 当程序需要以读/写的方式打开一个文件时,如果这个文件不存在,则程序会自动创建此文件。这里还需要设计一个类来封装员工信息。一个员工信息就是文件中的一条记录,而且必须保证每条记录在文件中的大小相同,也就是每个员工的姓名字段在文件中的长度是一样的,这样才能够准确定位每条记录在文件中的具体位置。假设name中有8个字符,少于8个则补空格(这里用“\u0000”),多于8个则去掉后面多余的部分。由于年龄是整型数,因此不管这个数有多大,只要它不超过整型数的范围,在内存中都占4个字节大小。 【例10-2】 RandomFileDemo.java。 上面的程序完成了所要实现的功能,显示出了Random AccessFile类的作用。String. substring(int beginIndex,int endIndex)方法可以用于取出一个字符串中的部分子字符串,但要注意的是:子字符串中的第一个字符对应的是原字符串中脚标为beginIndex的字符,但最后的字符对应的是原字符串中脚标为endIndex-1的字符,而不是脚标为endIndex的字符。案例1 随机流【案例描述】 使用RandAccessFile流读/写文件。【代码与注释】 10.1 File类 10.2 RandomAccessFile类 10.3 流类 10.4 字符编码 10.5 对象序列化 * *
您可能关注的文档
- 2015金属材料和热处理(机工版)课件:金属的性能.ppt
- 2015金属材料和热处理(机工版)课件:金属的晶体结构与结晶 .ppt
- 2015金属材料和热处理(机工版)课件:钢的热处理.ppt
- 2015金属材料和热处理(机工版)课件:铁碳合金 .ppt
- 2015金属材料和热处理(机工版)课件:非金属材料.ppt
- 2015金属焊接切割作业(劳动版)教学课件:概述 .ppt
- 2015金属焊接切割作业(劳动版)教学课件 .ppt
- 2015金属焊接切割作业(劳动版)教学课件:气焊、气割用气体、设备和工具.ppt
- 2015金属焊接切割作业(劳动版)教学课件:焊接电弧基本概念及熔焊原理 .ppt
- 2015金属焊接切割作业(劳动版)教学课件:焊接作业的安全操作技术 .ppt
最近下载
- 规范汉字书写 标点符号用法举例 标点符号用法举例.pptx VIP
- 职业院校技能大赛--Z-30“工程测量”赛项理论考试题库.doc VIP
- 安全员C证考试题库(精练).docx VIP
- 2018年四川省职业院校技能大赛工程测量赛项中职组理论考试题库.docx VIP
- 2020年山东省职业院校技能大赛中职组工程测量赛项理论试题.doc VIP
- 第十六届山东省职业院校技能大赛中职工程测量赛(教师组)理论试题.docx VIP
- 中央八项规定精神专题党课讲座PPT模板.pptx VIP
- 第十六届山东省职业院校技能大赛中职工程测量赛项(学生组)理论试题.docx VIP
- 全频带阻塞干扰刘慈欣小说读书分享PPT.pptx VIP
- 作子女生命的教练.PPT
文档评论(0)