题目是:搜索某一文件夹下包含某字符串的文件名,保存到文本文件下面是程序,不过这个程序是列出所有文件的,要改成符合题目要求的
public class ListFiles {
private static String listFileStr="";
public static void main(String[] args) {
try
{
File saveFile=new File(args[1]);
FileWriter fw=new FileWriter(saveFile);
ListFiles lf=new ListFiles();
lf.listFile(args[0]);
fw.write(listFileStr);
fw.close();
}
catch (ArrayIndexOutOfBoundsException ea)
{
//参数提示
System.out.println("Usage: ListFiles <source dir> <target file>"); }
catch (IOException e)
{
System.out.println("IO error!\r\n"+e.toString());
} }
public void listFile(String rp)
{ File file=new File(rp);
File list[]=file.listFiles();
for(int i=0;i<list.length;i++)
{
try
{
if (list[i].isDirectory())
{
new ListFiles().listFile(list[i].toString());
}
else
{
listFileStr+=list[i].getAbsolutePath()+"\r\n";
System.out.println(list[i].getAbsolutePath());
}
}
catch (Exception ex)
{
listFileStr+="Access deny:"+list[i].getAbsolutePath()+"\r\n";
System.out.println("Access deny:"+list[i].getAbsolutePath());
}
}
} }
我是学生,谢谢,很急
谢谢
public class ListFiles {
private static String listFileStr="";
public static void main(String[] args) {
try
{
File saveFile=new File(args[1]);
FileWriter fw=new FileWriter(saveFile);
ListFiles lf=new ListFiles();
lf.listFile(args[0]);
fw.write(listFileStr);
fw.close();
}
catch (ArrayIndexOutOfBoundsException ea)
{
//参数提示
System.out.println("Usage: ListFiles <source dir> <target file>"); }
catch (IOException e)
{
System.out.println("IO error!\r\n"+e.toString());
} }
public void listFile(String rp)
{ File file=new File(rp);
File list[]=file.listFiles();
for(int i=0;i<list.length;i++)
{
try
{
if (list[i].isDirectory())
{
new ListFiles().listFile(list[i].toString());
}
else
{
listFileStr+=list[i].getAbsolutePath()+"\r\n";
System.out.println(list[i].getAbsolutePath());
}
}
catch (Exception ex)
{
listFileStr+="Access deny:"+list[i].getAbsolutePath()+"\r\n";
System.out.println("Access deny:"+list[i].getAbsolutePath());
}
}
} }
我是学生,谢谢,很急
谢谢
解决方案 »
- 判断一个文件是否为utf-8格式的java代码,自己看吧
- 两个字符串型的版本怎样比较?
- if (a != a) return a这是什么意思?
- 为什么有int和没有int结果不一样呢?
- java程序中,延时该怎么做?
- 希望大家能教我一个怎么把一个image的图形信息显示在applet上的方法
- fengdao/wellsoon/ Anubis等人来领分
- 在Java中(web端)如何打开或者新建word文档?如解决,高分相送!!
- 小问题,各位看过来!谢谢!
- JAVA中TextField的length的控制 (不用监听器)
- 关于执行excuteUpdate的问题
- java有转不过来的码吗?new String(ss.getBytes("UTF-8"),"GBK")也没用...
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.io.StringReader;
import java.net.URI;public class FilePathRead {
public static void main(String[] args){
FilePathRead t = new FilePathRead();
t.find(new File("C:\\j2sdk1.4.2_10"));
}
public void find(File f){
if(f.isDirectory()){
File[] fileList = f.listFiles();
for(int i = 0; i < fileList.length; i++){
find(fileList[i]);
}
}else{
if(f.getName().indexOf(".exe") != -1)
System.out.println(f.getAbsolutePath());
}
}
}
把 if(f.getName().indexOf(".exe") != -1) 中的 (".exe") 修改为你想要的任意字符窜。
public static void main(final String[] args) {
try {
File path = new File(".");
String[] list;
if(args.length == 0)
list = path.list();
else
list = path.list(
new FilenameFilter() {
public boolean
accept(File dir, String n) {
String f = new File(n).getName();
return f.indexOf(args[0]) != -1;
}
});
for(int i = 0; i < list.length; i++)
System.out.println(list[i]);
} catch(Exception e) {
e.printStackTrace();
}
}
}搜索当前目录,如果要任意目录File path = new File(".");要修改
return f.indexOf(args[0]) != -1;中args[0]为你的文件字符
File fileString[]=new File(path).listFiles();
for(int i=0;i<fileString.length;i++){
if(fileString[i].toString().indexOf(s)!=-1)
System.out.println(fileString[i]);
}
}
public static void main(String[] args) {
file("e:\\temp","2006");
}}
import java.io.File;
import java.io.FileFilter;public class AA { public static void main(String args[]) {
File f = new File("c:/cxz");
File[] ddd = f.listFiles(new MFilefilter("tc") {
});
for (int i = 0; i < ddd.length; i++) {
System.out.println(ddd[i].getName());
}
}
}class MFilefilter implements FileFilter { private String str = null; public MFilefilter(String str) {
this.str = str;
} public boolean accept(File pathname) {
if (str == null || pathname.isDirectory() || pathname == null)
return false;
return pathname.getName().indexOf(str) >= 0;
}
}
import java.util.*;
public class TestFile
{
public static File file;
public static FileWriter oos;
public static String outFilePath="ok1.txt";
public static void main(String[] args)
{
try{
File myfile = new File(".");
oos = new FileWriter(outFilePath);
System.out.println(myfile.getAbsolutePath());
String[] fileArray = myfile.list();
if(fileArray.length>1)
{
Handle hd = new Handle(fileArray);
hd.handle();
}
else
{
System.out.println("当前目录没有文件");
}
}
catch(Exception e)
{
}
}
}
class Handle
{
String[] file;
public Handle(String[] fileArray)
{
this.file = fileArray;
}
public boolean handle()
{
try{
FileWriter oos = new FileWriter(TestFile.outFilePath);
for(int i =0 ; i < file.length ; i++ )
{
File temp = new File(file[i]);
if(temp.isFile())
{
if(temp.getName().contains("est"))
{
System.out.println("找到文件!"+temp.getName());
oos.append(temp.getName());
}
}
}
oos.close();
}
catch(Exception e)
{
}
return true;
}
}
JAVA之父倒是知道是哪位.