public static void main(String[] args) {try {int batchSize = 1000; //每个文件包含的元素数量File inputFile = new File("D:\\Users\\yl.jiao.CN1\\Desktop\\费用中心\\CostCent_Headcount - 副本.xml"); //输入文件DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();Document doc = dBuilder.parse(inputFile);doc.getDocumentElement().normalize();NodeList nodeList = doc.getElementsByTagName("wd:Report_Entry"); //指定要分割的元素名称int totalElements = nodeList.getLength();int currentFileIndex = 1;for (int i = 0; i < totalElements; i += batchSize) {int endIndex = Math.min(i + batchSize, totalElements);String fileName = "output_" + currentFileIndex + ".xml"; //每个输出文件的名称FileWriter fileWriter = new FileWriter(fileName);fileWriter.write("\n");for (int j = i; j < endIndex; j++) {Element element = (Element) nodeList.item(j);fileWriter.write(getElementXML(element));}fileWriter.close();currentFileIndex++;break;}} catch (Exception e) {e.printStackTrace();}
}private static String getElementXML(Element element) {String xml = "";try {xml += "\n";xml += "" + element.getElementsByTagName("wd:WorkerID").item(0).getTextContent()+ " \n";xml += "" + element.getElementsByTagName("wd:Full_Name").item(0).getTextContent() + " \n";if (null != element.getElementsByTagName("wd:BUName") && null != element.getElementsByTagName("wd:BUName").item(0)){xml += "" + element.getElementsByTagName("wd:BUName").item(0).getTextContent() + " \n";}xml += "" + element.getElementsByTagName("wd:OrgName").item(0).getTextContent() + " \n";xml += "" + element.getElementsByTagName("wd:OrgName").item(0).getTextContent() + " \n";xml += "" + element.getElementsByTagName("wd:OrgID").item(0).getTextContent() + " \n";xml += "";xml += "" +element.getElementsByTagName("wd:Country").item(0).getChildNodes().item(1).getTextContent() + " ";xml += "" + element.getElementsByTagName("wd:Country").item(0).getChildNodes().item(1).getTextContent() + " >";xml += "" + element.getElementsByTagName("wd:Country").item(0).getChildNodes().item(2).getTextContent() + " >";xml += "" + element.getElementsByTagName("wd:Country").item(0).getChildNodes().item(3).getTextContent() + " >";xml += " ";xml += "" + element.getElementsByTagName("wd:CurrentCCCode").item(0).getTextContent() + " \n";xml += "" + element.getElementsByTagName("wd:CurrentCCName").item(0).getTextContent() + " \n";xml += "" + element.getElementsByTagName("wd:IsRehire").item(0).getTextContent() + " \n";xml += "" + element.getElementsByTagName("wd:HireDate").item(0).getTextContent() + " \n";if (null != element.getElementsByTagName("wd:CCChangeDate") && null != element.getElementsByTagName("wd:CCChangeDate").item(0)){xml += "" + element.getElementsByTagName("wd:CCChangeDate").item(0).getTextContent() + " \n";}if (null != element.getElementsByTagName("wd:ProposeCCCode") && null != element.getElementsByTagName("wd:ProposeCCCode").item(0)){xml += "" + element.getElementsByTagName("wd:ProposeCCCode").item(0).getTextContent() + " \n";}if (null != element.getElementsByTagName("wd:ProposeCCName") && null != element.getElementsByTagName("wd:ProposeCCName").item(0)){xml += "" + element.getElementsByTagName("wd:ProposeCCName").item(0).getTextContent() + " \n";}xml += " \n";} catch (Exception e) {e.printStackTrace();}return xml;
}
下一篇:1S 伺服远程输出功能