Dom4J 遍历文件夹 产生xml目录树

File root = new File(FolderPath); File[] fileStack = new File[1000]; Element[] elementStack = new Element[1000]; int now = 0; if (!root.isDirectory()) { System.err.println(FolderPath + "不是目录."); return null; } else if (!root.exists()) { System.err.println(FolderPath + "不存在."); return null; } Document document = DocumentHelper.createDocument(); Element documentNow = document.addElement("Root"); documentNow.addAttribute("Target", root.getName()); fileStack[now] = root; elementStack[now] = documentNow; // System.out.println(root.getPath()); do { root = fileStack[now]; documentNow = elementStack[now]; File[] listNodes = root.listFiles(); for (File file : listNodes) { if (file.isDirectory()) { fileStack[now] = file; elementStack[now] = documentNow.addElement("Folder"); elementStack[now].addAttribute("Name", file.getName()); now++; } else { documentNow.addElement("File").addAttribute("Name", file.getName()); } // System.out.println(file.getPath()); } now--; } while (now != -1); return document; 

try { Writer fileWriter = new FileWriter(xmlFolder + root.attributeValue("Target") + ".xml"); XMLWriter xmlWriter = new XMLWriter(fileWriter); xmlWriter.write(document); xmlWriter.close(); } catch (Exception e) { message = e.toString() + "写xml目录结构文件失败."; return false; } 

你可能感兴趣的:(Java开发学习系列)