我正在通过一个简单的批处理脚本合并两个ASCII文件,如下所示
COPY a.txt+b.txt c.txt /y /a问题是,C中的最后一个字符被设置为1A,即SUB的十六进制表示法。c.txt被输入到另一个与末尾的1A不同的可执行文件中。
在生成c.txt之后,如果我在Notepad++中打开它并删除最后一个字符,文件就可以正常工作。
如何合并a.txt和b.txt而不将1A附加到c.txt的末尾?
发布于 2012-03-14 18:36:20
/a和/b交换机的位置至关重要。它们的执行方式会有所不同,具体取决于它们是放在源文件名之后还是目标文件名之后。
当与目标文件名一起使用时,/a会导致添加文件结束标记(ASCII26)。你实际上是在指定这个!
当与源文件名一起使用时,
/a指定文件是ASCII码,并且它被复制到但不包括第一个ASCII26文件结束标记。该字符及其之后的任何内容都将被忽略。
/b会导致复制整个文件,包括任何文件结束标记及其后面的任何内容。
当与目标文件名一起使用时,
/a使ASCII26被添加为最后一个字符。
/b不会将ASCII26添加为最后一个字符。
您的解决方案
...although我还没测试过,可能是要用
COPY a.txt+b.txt /a c.txt /b /y
https://stackoverflow.com/questions/9699976
复制相似问题