Advertisement
Guest User

Untitled

a guest
Jun 30th, 2016
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.20 KB | None | 0 0
  1. package ReadAndConvert;
  2.  
  3. import java.io.File;
  4. import java.io.FileOutputStream;
  5.  
  6. import javax.xml.parsers.DocumentBuilder;
  7. import javax.xml.parsers.DocumentBuilderFactory;
  8.  
  9. import org.apache.poi.hssf.usermodel.HSSFRow;
  10. import org.apache.poi.hssf.usermodel.HSSFSheet;
  11. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  12. import org.w3c.dom.Document;
  13. import org.w3c.dom.Element;
  14. import org.w3c.dom.NodeList;
  15.  
  16. public class ReadMain {
  17. private static String fileslOCATION = "C:/Users/<User>/Desktop/New folder";
  18. private static String filesOUTlOCATION = fileslOCATION + "/Output/";
  19. private static String filesOUTFILE = filesOUTlOCATION + "OutputFile.xls";
  20. private static String filesTYPE = ".object";
  21. private static String filesCONVERTTYPE = "";
  22. private static String filesROOT = "fields";
  23. private static String[] filesElementne = {"fullName","description","type","label","length","precision","scale","referenceTo","relationshipLabel","relationshipName"};
  24.  
  25. public static void main(String[] args){
  26. //open folder and get all file location in lst
  27. File folder = new File(fileslOCATION);
  28. File[] listOfFiles = folder.listFiles();
  29. HSSFWorkbook workbook = new HSSFWorkbook();
  30. for (int i = 0; i < listOfFiles.length; i++) {
  31. if (listOfFiles[i].isFile() && listOfFiles[i].getName().endsWith(filesTYPE)) {
  32. Document doc = null;
  33. try {
  34. doc = parseXML(listOfFiles[i]);
  35. }
  36. catch (Exception e) {
  37. System.out.println("111");
  38. e.printStackTrace();
  39. }
  40.  
  41. NodeList nList = doc.getElementsByTagName(filesROOT);
  42. HSSFSheet sheet = null;
  43. HSSFRow rowhead = null;
  44. sheet = workbook.createSheet(listOfFiles[i].getName().replace(filesTYPE, filesCONVERTTYPE));
  45. rowhead = sheet.createRow(0);
  46. for(int k = 0; k < filesElementne.length; k++){
  47. rowhead.createCell(k).setCellValue(filesElementne[k]);
  48. }
  49.  
  50. for (int j = 0; j < nList.getLength(); j++)
  51. {
  52. Element eElement = (Element) nList.item(j);
  53. HSSFRow row = sheet.createRow((short)j+1);
  54. for(int k = 0; k < filesElementne.length; k++){
  55. Element cElement = (Element) eElement.getElementsByTagName(filesElementne[k]).item(0);
  56. if(cElement != null){
  57. row.createCell(k).setCellValue(cElement.getTextContent());
  58. }
  59. else {
  60. row.createCell(k).setCellValue("");
  61. }
  62. }
  63. }
  64.  
  65. try{
  66. FileOutputStream fileOut = new FileOutputStream(filesOUTFILE);
  67. workbook.write(fileOut);
  68. fileOut.close();
  69. }catch (Exception e) {
  70. System.out.println("Error while flushing/closing fileWriter !!!");
  71. e.printStackTrace();
  72. }
  73. }
  74. }
  75. }
  76.  
  77. private static Document parseXML(File fileValue) throws Exception
  78. {
  79. DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
  80. DocumentBuilder db = dbf.newDocumentBuilder();
  81. Document doc = db.parse(fileValue);
  82. doc.getDocumentElement().normalize();
  83. System.out.println("fileValue : "+fileValue.getName());
  84. return doc;
  85. }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement