JavaTM Platform
Standard Ed. 6

javax.tools
�ӿ� StandardJavaFileManager

���г����ӿڣ�
Closeable, Flushable, JavaFileManager, OptionChecker

public interface StandardJavaFileManager
extends JavaFileManager

���� java.io.File ���ļ�����������ȡ����ʵ����һ�㷽����ʹ�� getStandardFileManager�����磺

JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
DiagnosticCollector<JavaFileObject> diagnostics =
new DiagnosticCollector<JavaFileObject>();
StandardJavaFileManager fm = compiler.getStandardFileManager(diagnostics, null, null);
 
���ļ��������������ļ������ʾ�����ļ���zip �ļ���Ŀ���߻��������ļ�ϵͳ�������е���Ŀ����ʵ�ִ˽ӿڵ��ļ����������ص��κ��ļ����󶼱�������������Ϊ�� ������Щ�������� URI �������ģ� ������ URI ��������ԭ����������ע������

�����°汾��ʼ��
1.6

Ƕ����ժҪ
 
�ӽӿ� javax.tools.JavaFileManager �̳е�Ƕ����/�ӿ�
JavaFileManager.Location
 
����ժҪ
 Iterable<? extends JavaFileObject> getJavaFileObjects(File... files)
          ��ȡ��ʾ�����ļ����ļ�����
 Iterable<? extends JavaFileObject> getJavaFileObjects(String... names)
          ��ȡ��ʾ�����ļ����Ƶ��ļ�����
 Iterable<? extends JavaFileObject> getJavaFileObjectsFromFiles(Iterable<? extends File> files)
          ��ȡ��ʾ�����ļ����ļ�����
 Iterable<? extends JavaFileObject> getJavaFileObjectsFromStrings(Iterable<String> names)
          ��ȡ��ʾ�����ļ����Ƶ��ļ�����
 Iterable<? extends File> getLocation(JavaFileManager.Location location)
          ��ȡ�����λ�ù�����·����
 boolean isSameFile(FileObject a, FileObject b)
          �Ƚ������ļ�����������DZ�ʾ��ͬ�Ĺ淶�ļ���zip �ļ���Ŀ���߻����κ��ļ�ϵͳ�������е���Ŀ���򷵻� true��
 void setLocation(JavaFileManager.Location location, Iterable<? extends File> path)
          ������·�������λ�ù�����
 
�ӽӿ� javax.tools.JavaFileManager �̳еķ���
close, flush, getClassLoader, getFileForInput, getFileForOutput, getJavaFileForInput, getJavaFileForOutput, handleOption, hasLocation, inferBinaryName, list
 
�ӽӿ� javax.tools.OptionChecker �̳еķ���
isSupportedOption
 

������ϸ��Ϣ

isSameFile

boolean isSameFile(FileObject a,
                   FileObject b)
�Ƚ������ļ�����������DZ�ʾ��ͬ�Ĺ淶�ļ���zip �ļ���Ŀ���߻����κ��ļ�ϵͳ�������е���Ŀ���򷵻� true��

ָ���ߣ�
�ӿ� JavaFileManager �е� isSameFile
������
a - �ļ�����
b - �ļ�����
���أ�
����������ļ������ʾ��ͬ�Ĺ淶�ļ��� zip �ļ���Ŀ���򷵻� true�����򷵻� false��
�׳���
IllegalArgumentException - �������һ��������ʹ����һ���ļ�������ʵ�ִ�����

getJavaFileObjectsFromFiles

Iterable<? extends JavaFileObject> getJavaFileObjectsFromFiles(Iterable<? extends File> files)
��ȡ��ʾ�����ļ����ļ�����

������
files - �ļ��б�
���أ�
�ļ������б�
�׳���
IllegalArgumentException - ����ļ��б�����Ŀ¼

getJavaFileObjects

Iterable<? extends JavaFileObject> getJavaFileObjects(File... files)
��ȡ��ʾ�����ļ����ļ�����һ����ݷ�������Ч�ڣ�
getJavaFileObjectsFromFiles(Arrays.asList(files))
 

������
files - �ļ�����
���أ�
�ļ������б�
�׳���
IllegalArgumentException - ����ļ��������Ŀ¼
NullPointerException - �������������� null Ԫ��

getJavaFileObjectsFromStrings

Iterable<? extends JavaFileObject> getJavaFileObjectsFromStrings(Iterable<String> names)
��ȡ��ʾ�����ļ����Ƶ��ļ�����

������
names - �ļ������б�
���أ�
�ļ������б�
�׳���
IllegalArgumentException - ����ļ������б�����Ŀ¼

getJavaFileObjects

Iterable<? extends JavaFileObject> getJavaFileObjects(String... names)
��ȡ��ʾ�����ļ����Ƶ��ļ�����һ����ݷ�������Ч�ڣ�
getJavaFileObjectsFromStrings(Arrays.asList(names))
 

������
names - �ļ������б�
���أ�
�ļ������б�
�׳���
IllegalArgumentException - ����ļ������������Ŀ¼
NullPointerException - �������������� null Ԫ��

setLocation

void setLocation(JavaFileManager.Location location,
                 Iterable<? extends File> path)
                 throws IOException
������·�������λ�ù���������������ǰ��ֵ��

������
location - �
path - �ļ��б������Ϊ null����ʹ�ô�λ�õ�Ĭ��·��
�׳���
IllegalArgumentException - ���λ��Ϊһ�����λ�ò���·������ȫ����һ��Ԫ��
IOException - ���λ����һ�����λ�ò���·������ʾ����Ŀ¼
������
getLocation(javax.tools.JavaFileManager.Location)

getLocation

Iterable<? extends File> getLocation(JavaFileManager.Location location)
��ȡ�����λ�ù�����·����

������
location - �
���أ�
�ļ��б��������λ��û�й���·�����򷵻� null
������
setLocation(javax.tools.JavaFileManager.Location, java.lang.Iterable)

JavaTM Platform
Standard Ed. 6

�ύ��������
�йظ���� API �ο����ϺͿ�����Ա�ĵ�������� Java SE ������Ա�ĵ������ĵ���������ϸ�ġ����򿪷���Ա���������Լ�������������ﶨ�塢ʹ�ü��ɺ͹�������ʾ����

��Ȩ���� 2007 Sun Microsystems, Inc. ��������Ȩ���� ����������֤��������������ĵ����·ַ�������