[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理命令copy /b 合拼文件之后为啥打开不会报错?

本帖最后由 mimixi666 于 2014-7-8 15:12 编辑

我们都知道:
copy /b 2.png+2.rar 5.png
可以合成一个新文件,既可以用图片软件打开,又可以用解压缩文件软件来打开。。
但是我明白的是为啥打开不会报错?
原理不是很懂。。
里面的编码不会乱码?
为啥能打开的?
很疑惑。。

回复 4# CrLf


    原来是这样,明白了,谢谢。。

TOP

回复 3# mimixi666

合成的文件被WinRAR识别为“自解压格式 RAR 压缩文件”,这可能说明了一些原因,一般的自解压文件都是EXE类型,只能以EXE的文件头开头,RAR的压缩内容只能放在后边,WinRAR为了能够识别这些文件,便设定了一个标志Rar!,忽略这个标志之前的部分。

TOP

回复 3# mimixi666


    有的文件格式在结尾处标明了特征码
    有的文件格式在开头处标明了特征码
    还有些是在开头处定义了文件的有效长度

总之,“知道头在哪的文件格式”往往可以接续在“知道脚在哪的文件格式”后面,而不影响执行效果

TOP

回复 2# jingyu9575


你的意思是如果开头或者结尾和相关软件不一致的话,
那么其它数据就是过滤掉不作处理的?

TOP

用十六进制编辑器看,PNG的结尾有IEND数据:
  1. 00 00 00 00 49 45 4E 44 AE 42 60 82
复制代码
RAR的开头有文件格式说明(Rar!):
  1. 52 61 72 21 1A 07
复制代码
两个软件分别读取IEND的前面和Rar!的后面。

TOP

返回列表