快逸报表导出成XML文件
快逸报表有着强大的输出功能,可以直接把web报表导出为Excel、Word、Pdf、Txt等文件形式。但是一些web报表用户希望可以将报表导出到XML文件中以便对数据进行分析与解析,这样就需要我们用一些特殊的方法去实现了。
实现思路
:导出XML功能的可以通过将计算好的IReport对象传递给快逸提供的com.runqian.report4.view.xml.XMLReport类下的export()方法来实现导出。
下面根据思路来做一个例子,实现步骤如下:
首先打开任何一张已经制作好的快逸报表。
先看下该报表页面展现的效果,如下图:
然后只需在展现报表的jsp中加入下面代码:
Context ctx = new Context();//构建报表引擎计算环境
String path = “C:/api/reportFiles/demo.raq”; //该文件名可以为绝对路径,也可以相对当前程序启动路径
ReportDefine rd = (ReportDefine) ReportUtils.read(path);//读取报表
Engine engine = new Engine(rd, ctx); //构造报表引擎
IReport report = engine.calc();//运算报表
XMLReport xml = new XMLReport();//创建导出XML类的实例
xml.export(report);//将计算好的报表传递给xml类的export方法中
xml.saveTo(”C:/demo.xml”);//xml文件数据路径(也可以使用OutputStream输出)
一段简单的代码就可以实现将报表导出到XML文件中,下面我们看下XML文件中导入的内容,如下图:
这样页面中各式各样的报表导出到XML后就被规范成了XML格式的数据,方便了开发人员进行数据的分析和解析了。
原文链接:快逸报表导出成XML文件
相关文档:
HTML.html文件
<div align="center" class="style1">
<p>冰棍列表</p>
<p></p>
<table width="400" border="1">
<tr>
<th scope="col"><font size="4">品牌</font></th> ......
xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<mobile-list>
<mobile type="Nokia2652">
<wap2>false</wap2>
<width>115</width>
</mobile>
<mobile type="Nokia2650">
......
使用Metadata简化表数据向XML形式转化的实现
如果需要将表数据转化为XML形式数据的话,如果我们使用Spring的JDBC Template,那么常需要做的工作是创建一个RowMapper匿名类,在其中将字段与领域对象的某个属性匹配上,然后得到领域对象链表形式的结果,此后展开这个集合,再将字段转化为XML数据,其中进行了两次名称和值之 ......
今天才知道CMarkup可以直接解析字符串形式的XML。以前都是先存入一个文件,然后从文件中load。多做了I/O操作,效率不高。
CMarkup xml;
CString str;
xml.SetDoc(str);
tinyXml也可以直接解析XML字符串,方式如下:
// directly parsing string with tinyxml
const char* ......
在java应用开发中我们和xml打交道得机会太平凡了,一般情况下我看会用JDOM或是DOM4j来解析我们得XML文件,下面是一个Dom4j解析xml文件得例子,其中包括了对xml文件得取值、赋值、提取节点、节点得遍历等。
SAXReader reader =
new
SAXReader();
Document doc = reader.read(...); &nb ......