【发布时间】:2015-05-01 18:45:54
【问题描述】:
我尝试使用以下代码生成 Excel 报告。
import java.util.*;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.export.JRXlsExporter;
import net.sf.jasperreports.export.OutputStreamExporterOutput;
import net.sf.jasperreports.export.SimpleExporterInput;
import net.sf.jasperreports.export.SimpleOutputStreamExporterOutput;
import net.sf.jasperreports.export.SimpleXlsReportConfiguration;
public class FirstReport
{
public static void main(String[] args)
{
try
{
JRXlsExporter exporter = new JRXlsExporter();
exporter.setExporterInput(new SimpleExporterInput("FirstReport.jrxml"));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput("C://sample_report.xls"));
SimpleXlsReportConfiguration configuration = new SimpleXlsReportConfiguration();
configuration.setOnePagePerSheet(true);
configuration.setDetectCellType(true);
configuration.setCollapseRowSpan(false);
exporter.setConfiguration(configuration);
exporter.exportReport();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
此程序正在生成以下异常
net.sf.jasperreports.engine.JRRuntimeException:net.sf.jasperreports.engine.JRException:从文件加载对象时出错:FirstReport.jrxml 在 net.sf.jasperreports.export.SimpleExporterInput.(SimpleExporterInput.java:157) 在 FirstReport.main(FirstReport.java:33) 原因:net.sf.jasperreports.engine.JRException:从文件加载对象时出错:FirstReport.jrxml 在 net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:131) 在 net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:103) 在 net.sf.jasperreports.engine.util.JRLoader.loadObjectFromFile(JRLoader.java:94) 在 net.sf.jasperreports.export.SimpleExporterInput。 (SimpleExporterInput.java:153) ... 1 更多 引起:java.io.StreamCorruptedException:无效的流标头:3C3F786D 在 java.io.ObjectInputStream.readStreamHeader(未知来源) 在 java.io.ObjectInputStream.(未知来源) 在 net.sf.jasperreports.engine.util.ContextClassLoaderObjectInputStream。 (ContextClassLoaderObjectInputStream.java:57) 在 net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:126) ... 4 更多
【问题讨论】:
-
FirstReport.jrxml 似乎有问题:StreamCorruptedException: invalid stream header: 3C3F786D
标签: java jasper-reports report