公司最近放弃了购买FineReport报表的计划,改而使用中创的InforReport报表,昨天尝试了下将InforReport嵌入到J2EE应用中,其间出现了许多莫名其妙的错误,不过最后还是搞定了。
可惜的是,以前在FineReport上花了那么多功夫,如果换到InforReport,都得重新来过,粗略看了下InforReport的模板文件(IPR),一堆看不懂数字和字符
写道
...
...
cm9wIGtleT0iMTgsMyIgY29kZVR5cGU9IkVBTjEzIiBzaG93RGF0YT0iWUVTIiBkaXJlY3Rpb249
IjAiPg0KCQk8L2JhcmNvZGVwcm9wPg0KDQoJCTwvYmFyY29kZXByb3BiYXNlPg0KCTxzdWJtaXNz
aW9uIFVSTD0iIj4NCjwvc3VibWlzc2lvbj4NCjwvaW5mb3JyZXBvcnQ+DQo=
看到最后的那个等号,我突然想到了迅雷地址,迅雷采用了base64编码,于是我尝试将ipr文件通过base64解码看看,果然是xml文件,这样了解了xml的组成结构,就有可能不通过设计器动态生成一些报表了。
解码嘛,因为整理书签时刚好看到《可爱的Python》的链接,于是就用python来写:
def decode_ipr(filename):
try:
ipr_file = open(filename, 'r')
xml_file = open(re.sub(r'.ipr$', '.xml', filename), 'w')
print 'decoding: %s ==> %s' % (filename, xml_file.name)
base64.decode(ipr_file, xml_file)
ipr_file.close()
xml_file.close()
except IOError:
print 'error decoding file %s' % filename
解码的例子已经打包,解压附件,直接运行decode.py即可。
令人费解的是,中创为何要把xml格式进行编码呢,文件反弄得大了不少,保护模板文件的真实内容?这种程序的保护也太低级了些吧。
如果你将解码后的xml文件后缀改成ipr,用InforReport的设计器依然可以正常打开,有趣。
分享到:
相关推荐
python入门 Python+Excel 报表自动化详解.zip Python+Excel 报表自动化详解.zip Python+Excel 报表自动化详解.zip Python+Excel 报表自动化详解.zip ...Python+Excel 报表自动化详解.zipPython+Excel 报表自
WechatImageDecoder.py实现了解码微信聊天图片数据文件.dat文件的功能。代码文件中的每一行都做了注释,便于代码学习。代码中的两个变量wechat_image_absolute_path、output_path需要修改为自己电脑上的实际路径。
Arcgis中利用python语言把dbf文件批量转换成Excel表格,注释详细,只需更改dbf文件所在路径以及输出路径
python解码方式 Python解码方式:理解编码与解码 在计算机领域中,编码和解码是非常重要的概念。编码是将信息转换为计算机可以理解的二进制数据的过程,而解码则是将这些二进制数据转换为人类可以理解的信息。Python...
利用Python语句读取json文件,并输出相应数据,py文件为代码,out为输出文件夹,json为数据文件所在文件夹
python flask框架开发模板,配置了数据库迁移(migrate) 日志logger 等 启动:python runserver.py 数据库迁移 :python manage.py db init
该代码利用python(numpy)生成ply文件,并将三维点云数据写入ply文件。生成的ply文件可以直接用meshlab打开查看点云。 这个积分太高了,我重新上传了一份,链接: ...
python生成docx文档从模板。有数据,有模板,有代码,立可跑。花了作者半天时间。主要是比较疑惑颇费工夫。所以需要5积分。得罪得罪。
python 解码 pdf
Python上机程序设计报告模板.pdfPython上机程序设计报告模板.pdfPython上机程序设计报告模板.pdfPython上机程序设计报告模板.pdfPython上机程序设计报告模板.pdfPython上机程序设计报告模板.pdfPython上机程序设计...
利用python提取ERA5的nc文件数据
S模式和ADS-B信号的Python解码器_Python_Cython_下载.zip
Arcgis中利用python语言对shp文件批量添加字段,注释详细,只需更改shp文件所在文件夹路径,以及相关字段名称、类型、长度等设置即可
python来分析一些财务报表数据
.DS_Store文件泄漏利用python脚本,自动检测下载.DS_Store类型泄露源码。
基于python的rtcm解码算法源码,有详细框架和完整算法,用于GNSS差分数据处理学习
利用python3.6(numpy),生成ply文件,并将三维点云数据写入ply文件。生成的ply文件可以直接用meshlab软件打开查看点云。 代码建议使用pycharm运行,
python发送邮件报表
Arcgis中利用python语言对shp文件批量计算面积,注释详细,只需更改shp文件输入及结果输出文件夹路径即可
这个文件包包含了一个或多个Python脚本,这些脚本利用Python的强大功能和灵活性,通过编程方式实现对PPT模板的快速复制。用户只需运行这些脚本,就可以在短时间内完成大量PPT模板的复制工作,从而提高工作效率,节省...