javax.tools

接口
异常
所有已知子接口:
JavaFileObject
所有已知实现类:
ForwardingFileObject, ForwardingJavaFileObject, SimpleJavaFileObject

public interface FileObject

工具的文件抽象。在这里,文件 是指常规文件和其他数据源的抽象。例如,文件对象可用于表示常规文件、内存缓存或数据库中的数据。

如果发生安全异常,则此接口中的所有方法都将抛出 SecurityException。

除非明确允许,否则只要给定 null 参数,此接口中的所有方法都将抛出 NullPointerException。

从以下版本开始:
1.6

方法摘要
 boolean delete()
          删除此文件对象。
 CharSequence getCharContent(boolean ignoreEncodingErrors)
          返回此文件对象的字符内容(如果有)。
 long getLastModified()
          获取最后一次修改此文件对象的时间。
 String getName()
          获取此文件对象的用户友好 (user-friendly) 的名称。
 InputStream openInputStream()
          获取此文件对象的 InputStream。
 OutputStream openOutputStream()
          获取此文件对象的 OutputStream。
 Reader openReader(boolean ignoreEncodingErrors)
          获取此对象的 reader。
 Writer openWriter()
          获取此文件对象的 Writer。
 URI toUri()
          返回标识此文件对象的 URI。
 

方法详细信息

toUri

URI toUri()
返回标识此文件对象的 URI。

返回:
URI

getName

String getName()
获取此文件对象的用户友好 (user-friendly) 的名称。没有指定返回的准确值,但是实现应该负责保存用户给定的名称。例如,如果用户在命令行中写入文件名 "BobsApp\Test.java",则此方法应该返回 "BobsApp\Test.java",而 toUri 方法可能返回 file:///C:/Documents%20and%20Settings/UncleBob/BobsApp/Test.java

返回:
用户友好的名称

openInputStream

InputStream openInputStream()
                            throws IOException
获取此文件对象的 InputStream。

返回:
InputStream
抛出:
IllegalStateException - 如果此文件对象是为写入而打开的,不支持读取操作
UnsupportedOperationException - 如果这种文件对象不支持字节访问
IOException - 如果发生 I/O 错误

openOutputStream

OutputStream openOutputStream()
                              throws IOException
获取此文件对象的 OutputStream。

返回:
OutputStream
抛出:
IllegalStateException - 如果此文件对象是为读取而打开的,不支持写入操作
UnsupportedOperationException - 如果这种对象不支持字节访问
IOException - 如果发生 I/O 错误

openReader

Reader openReader(boolean ignoreEncodingErrors)
                  throws IOException
获取此对象的 reader。返回的 reader 将代替不能用默认转换字符解码的字节。此外,除非 ignoreEncodingErrors 为 true,否则 reader 可能报告一个诊断。

参数:
ignoreEncodingErrors - 如果为 true,则忽略编码错误
返回:
Reader
抛出:
IllegalStateException - 如果此文件对象是为写入而打开的,不支持读取操作
UnsupportedOperationException - 如果这种文件对象不支持字符访问
IOException - 如果发生 I/O 错误

getCharContent

CharSequence getCharContent(boolean ignoreEncodingErrors)
                            throws IOException
返回此文件对象的字符内容(如果有)。默认的转换字符将代替任何不能被解码的字节。此外,除非 ignoreEncodingErrors 为 true,否则可能报告一个诊断。

参数:
ignoreEncodingErrors - 如果为 true,则忽略编码错误
返回:
CharSequence(如果有);否则返回 null
抛出:
IllegalStateException - 如果此文件对象是为写入而打开的,不支持读取操作
UnsupportedOperationException - 如果这种文件对象不支持字符访问
IOException - 如果发生 I/O 错误

openWriter

Writer openWriter()
                  throws IOException
获取此文件对象的 Writer。

返回:
Writer
抛出:
IllegalStateException - 如果此文件对象是为读取而打开的,不支持写入操作
UnsupportedOperationException - 如果这种文件对象不支持字符访问
IOException - 如果发生 I/O 错误

getLastModified

long getLastModified()
获取最后一次修改此文件对象的时间。该时间用距历元(1970 年 1 月 1 日 00:00:00,格林威治时间)的毫秒数计算。

返回:
最后一次修改此文件对象的时间;如果该文件对象不存在,发生 I/O 错误或者不支持该操作,则返回 0

delete

boolean delete()
删除此文件对象。如果发生错误,则返回 false。

返回:
当且仅当成功删除此文件对象时,返回 true;否则返回 false