返回列表 发帖

[文本处理] 【已解决】求助批处理base64合成文件

本帖最后由 304802301 于 2025-4-3 15:35 编辑

1、我提供了3个示例,在文件夹“1合并前”里面
2、有一个文件夹“01”,把里面的所有文件使用7zip压缩------------并设置密码,密码取值自文件名为“01.H”里面的UniqueCode字段的值--------------再把加了密的压缩包文件base64成字符串----------------------再写入“01.H”文件里面的Value字段的值
3、上述的文件夹“01”和文件“01.H”是搭配的。文件名字和文件夹名字一致的才搭配
4、上述过程中如果没有UniqueCode字段,则表示没有密码,就不用设置密码
5、需要批量处理,有上万个需要处理,感谢各位!
6、示例上传了百度网盘,合成后的效果文件在“2合并结果”文件夹里,可以提供参考https://pan.baidu.com/s/1gtrPhHRZLNEqYtCQcoUeNg 提取码: i8ze

本帖最后由 304802301 于 2025-3-26 22:58 编辑

回复 2# Five66


为啥示例里的文件名一个.H 一个.ZBS 一个.TBS ? 这有啥规律不? 还是都这样? 名字会重复不? 会的话要如何处理?
答:文件格式是随机的,没有规律(或者我可以先批量获取所有文件格式,再自行写入到bat指定的地方,也行的),文件名之间不会重复,文件夹名之间不会重复,格式会重复。不考虑重复的情况或者重复的情况下你觉得怎么处理合适就怎么处理。

为啥示例里的文件内容一个是BidFileTable的value 一个是FileTable的value? 会出现其他的不? 还是都这样? 会出现多个的value不? 会的话要如何处理?
答:目前只有BidFileTable的value和FileTable的value,暂时不会出现其他的value(如果后期冒出了其他,希望我可以自行编辑bat来增加)。一个文件里只有唯一的value,不会出现多个(示例文件中也没有出现多个),不考虑重复的情况或者重复的情况下你觉得怎么处理合适就怎么处理。



为啥示例文件的合并结果value值解码后开头是PK? 所有文件使用7zip压缩 ,是指用7zip压缩成zip不?
答:为啥示例文件的合并结果value值解码后开头是PK?【有论坛大哥回复这个是zip的文件头,查了下确实是。另外如果反向操作,把加密后的base64字符串进行解密,再转换成文件的话,是可以转换成一个zip压缩包,带密码(或无密码),解压后就是对应文件夹里那些文件了】,所有文件使用7zip压缩 ,是指用7zip压缩成zip不?【是的,因为密码很长很长,目前只有7zip支持这么长的密码】

另外再补充下:
1、如果有一个文件名是“jkj.aaa”,那一定会有一个文件夹名字叫“jkj”搭配的。
2、最好可以一个一个的处理,就是处理好一个后接着处理下一个。如果多个一起处理担心文件乱了或者密码乱了之类的问题。
3、有时候文件很大,考虑可以生成一个临时的缓存文件。

TOP

回复 4# buyiyang


    查了下,确实是的。从百度查询到的:
‌zip压缩包的文件头标记确实是“PK”。‌

zip文件头标记由四个字节组成,具体为0x04034b50,通常以“PK”表示‌
1
。这个标记用于在解压时判断文件是否为zip格式的压缩包‌

TOP

回复 7# Five66


    感谢大哥!但是感觉和我提供的示例结果里的bae64字符串不一样。。。你看下截图。
[img][/img]

TOP

回复 6# wanghan519


    感谢大哥!但是有点问题哦,他提示这个,你看下截图
[img][/img]

TOP

本帖最后由 304802301 于 2025-3-27 21:16 编辑

回复 11# Five66


    大哥不好意思。。。我前面应该是搞错了,UniqueCode不是明文的密码,是base64之后的内容。意思就是要把UniqueCoded的值base64解密后,才是真正的密码,再去压缩。麻烦再改下批处理哈,感谢感谢
比如示例01.H中,UniqueCode的值是MGVkNjA5OWRlNDFkNGQ5YTk3YjE2ZmY3MDQ4YmQ4ODEwOWM5ZWZiNzdkZTg0YWExODE5ZWI0ZDgxYzQwZjNlODMxOWRkZmNkMDdmYjQxY2RiMjZkM2FkNjE0OGQ0YzJkZTBmMWJiMTkzZmQxNDI0ZDg4YzVmOWJmNGVkNDRmOWU=,base64解密后是0ed6099de41d4d9a97b16ff7048bd88109c9efb77de84aa1819eb4d81c40f3e8319ddfcd07fb41cdb26d3ad6148d4c2de0f1bb193fd1424d88c5f9bf4ed44f9e,这就是真正的密码,去压缩文件

TOP

本帖最后由 304802301 于 2025-3-27 21:16 编辑

回复 6# wanghan519


        大哥不好意思。。。我前面应该是搞错了,UniqueCode不是明文的密码,是base64之后的内容。意思就是要把UniqueCoded的值base64解密后,才是真正的密码,再去压缩。麻烦再改下批处理哈,感谢感谢
比如示例01.H中,UniqueCode的值是MGVkNjA5OWRlNDFkNGQ5YTk3YjE2ZmY3MDQ4YmQ4ODEwOWM5ZWZiNzdkZTg0YWExODE5ZWI0ZDgxYzQwZjNlODMxOWRkZmNkMDdmYjQxY2RiMjZkM2FkNjE0OGQ0YzJkZTBmMWJiMTkzZmQxNDI0ZDg4YzVmOWJmNGVkNDRmOWU=,base64解密后是0ed6099de41d4d9a97b16ff7048bd88109c9efb77de84aa1819eb4d81c40f3e8319ddfcd07fb41cdb26d3ad6148d4c2de0f1bb193fd1424d88c5f9bf4ed44f9e,这就是真正的密码,去压缩文件

TOP

回复 19# Five66


    可用,感谢!

TOP

回复 18# wanghan519


        可用,感谢!

TOP

返回列表