抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

起因
前两天朋友聊天,想找个方便写作的东西,想到论坛上有某大佬发了个工具想介绍给朋友用,但是就是想不起名字(实则就是吃书百万)

后来经悬赏区发帖求助,热心网友协助下找到了,但是朋友用了之后总感觉…不是说东西不好,是不完全符合需求

然后兜兜转转看到了有人发的某DZJ写作软件的破解,全名就不说了,觉得还可以,但是缺少关键的模板文件,于是着手帮他解决这个问题:

太长不看的请空降最后直接拿成品- -||

分析

为了方便操作,我们找体积最小、内容最简单的模板入手

先用某写作工具打开一个叫“国际新闻来源”的模板:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

可以看到该模板实则没有内容,只有示例用的1~9九条数据

然后把对应的模板文件(.dzj)用文本工具打开查看内容:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

可以看到是经过加密的,但是仔细观察可以发现好像有一些重复的内容

有经验的大佬应该已经能一眼看出来是啥加密了,我们先不急,往后看

然后在写作工具中删除2~9总共8个条目,只留下“1”这个条目,然后保存模板:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

这时候我们再用文本工具打开该模板文件查看:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

到这里应该大多数人都看出来了,它很有可能是Base64加密的

于是我们找一个可以在线加密解密base64的网站尝试解密:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

就得到了这段内容,可以看出来它是一个xml格式的文件

这样是不是已经完工了呢,还没,由于有乱码- -||

但是不要紧,从第一行代码中可知该xml的编码是UTF-8格式,于是我们转换成UTF-8编码后:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

上图中绿圈和红圈就是分别对应的模板文件内容和代码内容。

那么我们就已经知道了,.dzj格式的模板可以先经过base64解码,然后由UTF-8转码,得到一个xml格式的文本

结语

既然知道了这些,那么我们只要反过来,即可将文本先转码为UTF-8,格式化成xml格式,再base64编码,就能得到.dzj模板了

由于功能简单,于是使用易语言进行开发,有模块支持的情况下,无非就是“到文本 (编码_Ansi到Utf8 ())”一通操作

抛砖引玉嘛,思路为主。所以源码就不发了

2019.12.20更新v1.0.3
支持将整个文件夹中的所有txt文件转换成一个.dzj模板
文件夹名称即为模板名称,txt文件名称为子模板名称,txt中每一行即为模板中每一个条目
*注意事项:
1、不支持子文件夹
2、不能将磁盘根目录选择为转换目录
3、目录中少于(包括)1个txt文件或超过99个txt文件时该功能不可用
4、每个txt文件内容不能超过9999行

示例图:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

2019.12.21更新v1.1.0
支持将整个文件夹中的所有dzj文件合并成一个,合并后每个dzj对应成为一个子模板,自身原本结构保持不变
文件夹名称即为模板名称,每个dzj名称对应为子模板名称
*注意事项:
1、不支持子文件夹
2、不能将磁盘根目录选择为转换目录
3、目录中少于(包括)1个dzj文件或超过99个dzj文件时该功能不可用

示例图:

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

2020.03.04更新v1.2.0
针对某些特殊格式模板做了调整

2020.03.25更新v1.2.1
增加更多进度显示细节

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

抛砖引玉:浅析某Dzj写作软件模板格式以及txt转换dzj工具(成品)2020.03.04更新

成品如下:

链接: https://pan.baidu.com/s/1Gdw-vyq3Sr4D8so4HQqT2w 提取码: nebg

原创不易,如果帖子对你有用、喜爱本工具,请不要吝啬
——热心——评分——
谢谢大家!

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 共19条

请登录后发表评论