遍历文件目录输出json和xml

import java.io.File;


public class FileUtil {
private static int id=0;
/*
* 遍历某个目录下的所有文件,返回json
*/
public static String readDirToJson(String dir){
File file=new File(dir);
String fileJson="";
if(!file.exists()){
return fileJson;
}
fileJson=readDirToJson(file);
return fileJson;
}
/*
* 遍历某个目录下的所有文件,返回便于dtree操作的xml
*/
public static synchronized String readDirToXml(String dir){
File file=new File(dir);
String fileXml="";
if(!file.exists()){
return fileXml;
}
String dirName=file.getName();
fileXml="<file><path>"+file.getPath()+"</path><fileName>"+dirName+"</fileName></file>" +
"<id>"+id+"</id><parentId>"+(id-1)+"</parentId>";
fileXml=fileXml+readDirToXml(file,id);
return fileXml;
}
/*
* 遍历某个目录下的所有文件,返回json
*/
public static String readDirToJson(File file){
File [] listFiles=file.listFiles();
String dirName=file.getName();
String fileJson="{\""+dirName+"\":[";
int size=listFiles.length;
for (int i=0;i<size; i++) {
File file2=listFiles[i];
if(file2.isDirectory()){
fileJson=fileJson+readDirToJson(file2);
if(i<size-1){
fileJson=fileJson+",";
}
}else {
String path=file2.getPath();
String fileStr="";
   String fileName=file2.getName();
long fileSize=file2.length()/1024;
fileStr="{path:\""+path+"\",fileName:\""+fileName+"\",fileSize:\""+fileSize+"kb\"}";
if(i<size-1){
fileStr=fileStr+",";
}
fileJson=fileJson+fileStr;
}
}
fileJson=fileJson+"]}";
return fileJson;
}
/*
* 遍历某个目录下的所有文件,返回便于dtree操作的xml
*/
public static synchronized String readDirToXml(File file,int parentId){
File [] listFiles=file.listFiles();
String fileXml="";
Integer parentId2=new Integer(parentId);
int size=listFiles.length;
for (int i=0;i<size; i++) {
File file2=listFiles[i];
String path=file2.getPath();
String fileStr="";
   String fileName=file2.getName();
long fileSize=file2.length()/1024;
id=id+1;
fileStr="<file><path>"+path+"</path><fileName>"+fileName+"</fileName><fileSize>"+fileSize+"kb</fileSize></file>" +
"<id>"+id+"</id><parentId>"+parentId2+"</parentId>";
fileXml=fileXml+fileStr;
if(file2.isDirectory()){
fileXml=fileXml+readDirToXml(file2,id);
}
}
return fileXml;
}
public static void main(String[] args) {
String files=readDirToXml("F:\\帮助文档");
System.out.println(files);
}
}

你可能感兴趣的:(遍历文件目录输出json和xml)