import org.jxls.reader.ReaderBuilder;
import org.jxls.reader.XLSReader;
import org.jxls.reader.XLSReadStatus;
import org.xml.sax.SAXException;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
public class ExcelReader {
public static void main(String[] args) {
try {
String excelFilePath = "path/to/excelFile.xlsx";
String xmlTemplatePath = "path/to/template.xml";
FileInputStream xlsFileInputStream = new FileInputStream(excelFilePath);
BufferedInputStream excelInputStream = new BufferedInputStream(xlsFileInputStream);
ByteArrayOutputStream output = new ByteArrayOutputStream();
Map<String, Object> beans = new HashMap<>();
beans.put("Sheet1", Data.class);
XLSReader reader = ReaderBuilder.buildFromXML(new File(xmlTemplatePath));
XLSReadStatus readStatus = reader.read(excelInputStream, beans);
((Data) beans.get("Sheet1")).writeTo(output);
System.out.println(output.toString());
excelInputStream.close();
e.printStackTrace();
}
}
}
class Data {
private String name;
private String email;
public void writeTo(OutputStream outputStream) throws IOException {
Writer writer = new OutputStreamWriter(outputStream);
writer.write("Name: " + name + "
");
writer.write("Email: " + email + "
");
writer.flush();
}
}