日期:2014-05-20  浏览次数:20726 次

(100分求助)java实现文件检索转换功能
我想用java编个程序把一个目录下所有的.html格式文件(还有别的文件)检索出来并且转换为xml格式的,再复制到另外一个文件夹中,请问高手程序应该如何编写?检索出.html文件及转换为.xml格式的代码都已经知道,关键怎么获得检索出的.html文件?多谢了  


------解决方案--------------------
没太明白,用.html文件特征找到所有的html文件再循环处理不就完了吗?

有什么疑问吗?
------解决方案--------------------
判断文件名是否以html结束
参考:
File f = new File( "G:\\ ");
String txts[] = f.list(new FilenameFilter(){
public boolean accept(File dir, String name){
return name.endsWith( ".txt ");
}
});
for(int i=0; i <txts.length; ++i){
System.out.println(txts[i]);
}
------解决方案--------------------
楼主的功能我全部给你实现了。请楼主结贴
import java.io.*;
public class testhtml
{
public static void main(String[]args)
{
ChangeFile t = new ChangeFile( "E:\\testhtml\\ ", "html ", "xml ");

}
}
/*
设置返回的缀
*/
class ExtensionFilter implements FilenameFilter
{
public ExtensionFilter(String ext)
{
extension = ". " + ext;
}
public boolean accept(File dir,String name)
{
return name.endsWith(extension);
}
private String extension;
}
//改变方件
class ChangeFile
{
public ChangeFile(String dir,String extenstr,String extchanage)
{
try
{
pathName = new File(dir);
extbefore = extenstr;
String[]fileNames = pathName.list(new ExtensionFilter(extenstr));
System.out.println(fileNames.length);
extstr = extchanage;
ChangeFiletoFile(fileNames);
}
catch(Exception e)
{
e.printStackTrace();
System.out.println( "所给路径可能正确 ");
}
}
public void ChangeFiletoFile(String[]files)
{
for(int i=0;i <files.length;i++)
{
File f= new File(pathName.getPath(),files[i]);
String fileName = f.getName();
fileName = fileName.replaceAll( ". "+extbefore, ". "+extstr);
f.renameTo(new File(fileName));
System.out.println(f.getPath());
}
}
private String extstr;
private String extbefore;
private File pathName;
}