自己加的注释
public
class
listfile{
static
public
void
main(string[]
str)throws
exception{
file
f=null
bufferedreader
read=new
bufferedreader(new
inputstreamreader(system.in))
//接受控制台的输入
system.out.println("请输入一个目录:")
//提示输入目录
string
path=read.readline()
//获取路径
f=new
file(path)
//新建文件实例
file[]
list=f.listfiles()
/*
此处获取文件夹下的所有文件
*/
for(int
i=0i
评论
0
0
加载更多
以下java程序的作用是将当前目录及其子目录中的.java文件收集到collection.txt文件中,并添加行号,你可以参考一下。import java.io.*
public class Collection
{
public static void main(String[] args) throws Exception
{
final String F=".\\collection.txt"
FW=new FileWriter(new File(F))
Collection.ProcessDirectory(new File("."))
Collection.FW.flush()
Collection.FW.close()
}
private static void ProcessDirectory(File d) throws Exception
{
File[] ds=null
Collection.ProcessJavaFile(d)
ds=d.listFiles(Collection.DFilter)
for(int i=0i<ds.lengthi++)
{
Collection.ProcessDirectory(ds[i])
}
}
private static void ProcessJavaFile(File d) throws Exception
{
String line=null
LineNumberReader lnr=null
File[] fs=d.listFiles(Collection.FNFilter)
for(int i=0i<fs.lengthi++)
{
lnr=new LineNumberReader(new FileReader(fs[i]))
Collection.FW.write(fs[i].getCanonicalPath()+"\r\n")
System.out.println(fs[i].getCanonicalPath())
while(null!=(line=lnr.readLine()))
{
Collection.FW.write(""+lnr.getLineNumber()+" "+line+"\r\n")
System.out.println(""+lnr.getLineNumber()+" "+line)
}
Collection.FW.write("\r\n")
System.out.println()
}
}
private static FileWriter FW
private static FilenameFilter FNFilter=new FilenameFilter()
{
public boolean accept(File dir,String name)
{
return name.endsWith(".java")
}
}
private static FileFilter DFilter=new FileFilter()
{
public boolean accept(File pathname)
{
return pathname.isDirectory()
}
}
}