|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
今天是第31天,终于下了个API文档,中文的
如下代码,完成读取纯文本文档,并以字符串返回文档中所有文字的操作:
- package exception;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.util.Scanner;
- public class FileUtil {
- public static String readFile(String name){
- StringBuilder text=new StringBuilder();
- try{
- Scanner console=new Scanner(new FileInputStream(name));
- while(console.hasNext()){
- text.append(console.nextLine())
- .append('\n');
- }
- }catch(FileNotFoundException ex){
- ex.printStackTrace();
- }
-
- return text.toString();
- }
- }
复制代码 其中用API查询的信息如下:
1.
-java.lang.Object
-file:///resources/inherit.gifjava.io.InputStream
-file:///resources/inherit.gifjava.io.FileInputStream
2.
FileInputStream 从文件系统中的某个文件中获取输入字节。哪些文件可用取决于主机环境。
FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,请考虑使用 FileReader。
3.
public FileInputStream(String name)
throws FileNotFoundException
通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。创建一个新 FileDescriptor 对象来表示此文件连接。
首先,如果有安全管理器,则用 name 作为参数调用其 checkRead 方法。
如果指定文件不存在,或者它是一个目录,而不是一个常规文件,抑或因为其他某些原因而无法打开进行读取,则抛出 FileNotFoundException。
4.
iterator 迭代器 迭代程序
hasNext()——这是迭代器的用法。
使用hasNext()检查序列中是否还有元素,如果仍有元素可以迭代,则返回 true。
5.
Scanner创建时可以给予InputStream实例,而FileInputStream可指定文档名来开启与读取文档内容,是InputStream的子类。
如果方法设计流程中发生异常,而设计时并没有充足的信息知道该如何处理(例如不知道链接库会用在什么环境),那么可以抛出异常,让调用方法的客户端来处理。如:
- package exception;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.util.Scanner;
- public class FileUtil {
- public static String readFile(String name)
- throws FileNotFoundException{
-
- StringBuilder text=new StringBuilder();
- Scanner console=new Scanner(new FileInputStream(name));
- while(console.hasNext()){
- text.append(console.nextLine())
- .append('\n');
- }
-
- return text.toString();
- }
- }
复制代码 6.
操作对象的过程中如果会抛出受检异常,但目前环境不足以处理异常,所以无法使用try、catch处理时,可由方法的客户端依据当时调用的环境信息进行处理。为了告诉编译系统这个事实,必须使用throws声明此方法会抛出的异常类型或父类型,编译程序才可通过编译。
throws声明部分会是API操作接口的一部分,客户端不用查看原始码,从API文件中可直接得知。
|
评分
-
查看全部评分
|