解析Excel:
解析XML:
/**
* 通过文件的路径得到一个工作表实例
* @param filePath 文件路径
* @throws IOException
*/
public void initWorkBook(String filePath) throws IOException {
File file = new File(filePath);
InputStream is = new FileInputStream(file);
Workbook workbook = null;
// 判断文件是什么格式
if(filePath.endsWith(".xls")) {
workbook = new HSSFWorkbook(is);//Excel 2003
} else if(filePath.endsWith(".xlsx")) {
workbook = new XSSFWorkbook(is);//Excel 2007
}
parseWorkbook(workbook);//解析workbook中的内容
}
/**
* 解析Workbook对象
* @param workbook
*/
public void parseWorkbook(Workbook workbook) {
// 得到Sheet的个数
int sheetNum = workbook.getNumberOfSheets();
Sheet sheet = null;
// 遍历sheet
for(int i=0; i<sheetNum; i++) {
sheet = workbook.getSheetAt(i);
parseSheet(sheet);//解析Sheet中的内容
}
}
/**
* 解析Sheet对象
* @param sheet
*/
public void parseSheet(Sheet sheet) {
Row row = null;
Iterator<Row> iterator = sheet.iterator();
while(iterator.hasNext()) {
row = iterator.next();
parseRow(row);//解析Row中的内容
}
}
/**
* 解析Row对象
* @param row
*/
public void parseRow(Row row) {
Cell cell = null;
Iterator<Cell> iterator = row.iterator();
while(iterator.hasNext()) {
cell = iterator.next();
cell.setCellType(Cell.CELL_TYPE_STRING);
System.out.println(cell.getStringCellValue());
}
}
解析XML:
// 初始化解析XML的环境
SAXReader reader = new SAXReader();
Document document = reader.read(processConfigFile);
Element root = document.getRootElement();
// 遍历XML中的节点
if("nodeName".equalsIgnoreCase(root.getName())) {
Iterator<Element> it = root.elementIterator();
ProcessMonitor processMonitor = null;
while(it.hasNext()) {
Element ele = it.next();
}
}