Forum Discussion
pflaumengeist
13 years agoContributor
Regarding your first post, reading would look something like this
If your excel file looks like this:
and your xml file looks something like this:
<cusCallerID AreaCode="404" LineNumber="2013" Prefix="208"/>
import java.io.File
import jxl.*
import jxl.write.*
//=====================================================================
base_xml = '<cusCallerID AreaCode="404" LineNumber="2013" Prefix="208"/>'
//read excelfile
wb = Workbook.getWorkbook(new File('e:/values.xls'))
workbook = Workbook.createWorkbook(new File('e:/values.xls'), wb)
sheet = workbook.getSheet(0)
(1 .. sheet.getRows()).each {
row ->
xml = new XmlParser().parseText(base_xml)
log.info 'new xml'
xml.@"${sheet.getCell(0, 0).getContents()}" = sheet.getCell(row, 0).getContents()
xml.@"${sheet.getCell(0, 1).getContents()}" = sheet.getCell(row, 1).getContents()
xml.@"${sheet.getCell(0, 2).getContents()}" = sheet.getCell(row, 2).getContents()
w = new StringWriter()
p = new XmlNodePrinter(new PrintWriter(w))
p.preserveWhitespace = true;
p.print(xml)
//do stuff here
log.info w.toString()
}
workbook.close()
wb.close()
If your excel file looks like this:
col:0 col:1 col:2
row:0 AreaCode LineNumber Prefix
row:1 10 1 a
row:2 20 2 b
and your xml file looks something like this:
<cusCallerID AreaCode="404" LineNumber="2013" Prefix="208"/>