[填空题] 下面的程序是列出目录C:Test中所有的.txt文件,请将程序补充完整。
import java.io.*; //引入java.io包中所有的类
public class FileFilterTest
public static void main(String args[])
File dir=new File("C://Test");
Filter filter=new Filter("txt");
System.out.println("list java files in directory" +dir);
String files[]=dir.list(filter);
for(int i=0;i<files.length;i++)
File f=______;//为目录dir下的文件或目录创建一个File对象
if(f.isFile())
System.out.println("file "+f);
else
System.out.println("sub directory" +f);
class Filter implements FilenameFilter
String extent;
Filter(String extent)
this.extent=extent;
public boolean accept(File dir,String name)return name.endsWith("."+extent);//返回文件的后缀名
正确答案:new File(dir,files[i])
参考解析:本题考查文件的概念。对于目录,Java把它处理成文件的列表。通过类File提供的方法,可以得到文件或目录的描述信息,包括名称、所在路径、可读性、可写性和长度等,还可以生成新的目录,改变文件名称、删除文件、列出一个目录中所有的文件或与某个模式相匹配的文件等。boolean mkdir()方法是根据当前对象生成一个由该对象指定的路径;String list方法是列出当前目录下的文件;File(String path)方法表示如果path是实际存在的路径,则该File对象表示的是目录,如果path是文件名,则该File对象表示的是文件;File(String path,String name)方法中的参数path是路径名,name是文件名;File(File dir,String name)方法中的参数dir是路径名,name是文件名。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)