- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【经典外文翻译】-java(译文英文)毕业设计论文
Java
Java I/O 系统
这一点可以从解决方案的数量之多上看出端倪。这个问题难就难在它要面对的可能性太多了。不仅是因为有那么多I/O的源和目地(文件,控制台,网络连接等等),而且还有很多方法(顺序的『sequential』,随机的『random-access』,缓存的『buffered』,二进制的『binary』,字符方式的『character』,行的『by lines』,字的『by words』,等等)。 Java类库的设计者们用创建很多类的办法来解决这个问题。坦率地说Java I/O系统的类实在是太多了,以至于初看起来会把人吓着(但是,具有讽刺意味的是,这种设计实际上是限制了类的爆炸性增长)。此外,Java在1.0版之后又对其I/O类库作了重大的修改,原先是面向byte的,现在又补充了面向Unicode字符的类库。为了提高性能,完善功能,JDK 1.4又加了一个nio(意思是new I/O。这个名字会用上很多年)。这么以来,如果你想对Java的I/O类库有个全面了解,并且做到运用自如,你就得先学习大量的类。此外,了解I/O类库的演化的历史也是相当重要的。可能你的第一反应是别拿什么历史来烦我了,告诉我怎么用就可以了!但问题是,如果你对这段历史一无所知,很快就会被一些有用或是没用的类给搞糊涂了。
本章会介绍Java标准类库中的各种I/O类,及其使用方法。
File 类
在介绍直接从流里读写数据的类之前,我们先介绍一下处理文件和目录的类。
File类有一个极具欺骗性的名字;或许你会认为这是一个关于文件的类,但它不是。你可以用它来表示某个文件的名字,也可以用它来表示目录里一组文件的名字。如果它表示的是一组文件,那么你还可以用list( )方法来进行查询,让它会返回String数组。由于元素数量是固定的,因此数组会比容器更好一些。如果你想要获取另一个目录的清单,再建一个File对象就是了。实际上,叫它 FilePath可能会更好一些。下面我们举例说明怎样使用这个类及其相关的FilenameFilter接口。
目录列表器
假设你想看看这个目录。有两个办法。一是不带参数调用list( )。它返回的是File对象所含内容的完整清单。但是,如果你要的是一个限制性列表(restricted list)的话 —— 比方说,你想看看所有扩展名为.java的文件 —— 那么你就得使用目录过滤器了。这是一个专门负责挑选显示File对象的内容的类。
下面就是源代码。看看,用了java.utils.Arrays.sort( )和11章的AlphabeticComparator之后,我们没费吹灰之力就对结果作了排序(按字母顺序):
//: c12:DirList.java
// Displays directory listing using regular expressions.
// {Args: D.*\.java}
import java.io.*;
import java.util.*;
import java.util.regex.*;
import com.bruceeckel.util.*;
public class DirList {
public static void main(String[] args) {
File path = new File(.);
String[] list;
if(args.length == 0)
list = path.list();
else
list = path.list(new DirFilter(args[0]));
Arrays.sort(list, new AlphabeticComparator());
for(int i = 0; i list.length; i++)
System.out.println(list[i]);
}
}
class DirFilter implements FilenameFilter {
private Pattern pattern;
public DirFilter(String regex) {
pattern = Ppile(regex);
}
public boolean accept(File dir, String name) {
// Strip path information, search for regex:
return pattern.matcher(
new File(name).getName()).matches();
您可能关注的文档
- 预案.方案 在线考试系统的系统分析与设计.doc
- 预案.方案 在线考试系统管理员功能子模块.doc
- 预案.方案 玉柴挖掘机液压基础知识汇编.doc
- 预案.方案 长输管道重大事故专项应急预案.doc
- 预案.方案 中小型企业网络规划设计和实施方案全套书.doc
- 预案.方案 中学安全应急预案汇编全套.doc
- 预案.方案 中小型企业网络规划设计与实施方案全套.doc
- 预案.方案 装饰工程施工工艺汇编.doc
- 预案.方案 重力勘探全套.doc
- 预案.方案 种草养鹅项目实施方案全套.doc
- 17盼(教学设计)-2024-2025学年语文六年级上册统编版.docx
- 13我能行(教学设计)2023-2024学年统编版道德与法治二年级下册.docx
- 2 宪法是根本法(教学设计)(第一课时)六年级道德与法治上册(部编版).docx
- 20以内的进位加法 8、7、6加几(教学设计)-2023-2024学年数学一年级上册人教版.docx
- 第四课初识Python 教案2023-2024学年青岛版(2019)初中信息技术第三册.docx
- 3《不懂就要问》教学设计-2024-2025学年三年级上册语文统编版.docx
- 19 只有一个地球 教学设计-2023-2024学年语文六年级上册统编版.docx
- 11宇宙生命之谜(教学设计)2023-2024学年统编版语文六年级下册.docx
- 14文言文二则《两小儿辩日》教学设计-2023-2024学年统编版语文六年级下册.docx
- 通过感官来发现教案 2024-2025学年教科版(2024)一年级上册科学.docx
文档评论(0)