|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
Java I/O系统被设计为功能强盛并便于扩展,但是当将一个简朴的文件加载到一个字符串时它有时候显得太强盛了。假如你已经厌倦了文件处理代码并想提高开发速度,使用简朴的文件加载和文件保存程序。 首先创建一个静态(static)的方式,给出一个字符串的文件名,将把文件的内容加载到一个字符串或者返回一个null表明什么也得不到。可以读入的文件的大小最多为MAXINT,因为它被加载到一个数组中。大文件的内容不能被加载到内容中。代码如下: /** * 加载给定文件名的内容,假如文件不可加载返回null。 */ static public String loadFile(String filename) { File file = new File( filename ); try { Reader rdr = new FileReader( file ); long sz = file.length(); // can only read in things of MAXINT length char[] ch = newchar[(int)sz]; rdr.read(ch); rdr.close(); return new String(ch); } catch(IOException ioe) { return null; } } 因为这段代码是设计作为类库代码的,因此当有IOException抛出时静态方式没有打印堆栈跟踪(stack trace)或者输出到日志,它也没有抛出一个非常,目的也是更快的开发速度。这是一种折衷。 第二个程序是用于保存的上面的那个方式的变种,获取一个字符串的文件名和要写入的字符串并将那个字符串作为文件保存。假如文件已经存在则覆盖原来的内容。假如文件路径上的目录不存在则创建那些目录,最后返回true和false来表明操作是否成功。 同样,字符串中的数据的内容是有限制的,并且缺少好的错误报告。抛出一个运行时非常或者使用内部的日志工具是好的解决方式。代码如下: /** * 将字符串的内容作为文件存入给定的文件中 * * @return完成操作时返回true */ static public boolean saveFile(String filename, String contents) { try { File file = new File( filename ); if(file.getParent() != null) { newFile(file.getParent()).mkdirs(); } Writer wtr = new FileWriter(file ); char[] ch =contents.toCharArray(); wtr.write(ch); wtr.close(); return true; } catch(IOException ioe) { return false; } } 提高创建这些方式,代码的质量下降了,因为它不能再处理底层的东西。然而开发的分离和速度都提高了。 增加一个FileException是提高质量的一个方式,但是牺牲了开发的速度。当代码只需要良好而不是完美时拥有这样的类库类是很不错的。 返回类别: 教程 上一教程: 如何在JSP中添加自己的TAG 下一教程: 一个JAVA的初学者如何准确编译HELLOWORLD程序 您可以阅读与"迅速开发时可以使用的JAVA文件工具方式"相关的教程: · [个人原创]JAVA 开发工具Jcreator使用技巧总结 · 使用hibernate扩展工具hbm2java根据配置文件生成持久化对象类(2.1.2) · Java单体测试工具cactus使用指南 · JAVA对象序列化保存为XML文件的工具类 · 新Java技术工具亮相游戏开发商大会 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |