我正在使用字符串编写器将一堆字符串写入文件,但是当我查看以十六进制创建的文件时,我发现了一个问题,那就是其中一个空格(x20)被替换为非破坏空格而不是(xc2 a0)当有2个空格分隔单词时.我不知道这是不是很重要,但我想知道是否有一个简单的解决方案吗?
这就是我所看到的:
20 c2 a0 53 57 45 45 50 Dump = " SWEEP"
Run Code Online (Sandbox Code Playgroud)
但我希望它永远是:
20 20 53 57 45 45 50 Dump = " SWEEP"
Run Code Online (Sandbox Code Playgroud)
请注意,此处不显示c2 a0,但转储看起来像"A".当我使用Notepad ++ Hex插件时.
有没有人有任何想法?
欢呼和谢谢;
-Daver
如果您的源包含非中断空格,则可以在写出字符串之前替换它们.
string sourceString = ..some string...
sourceString = sourceString.Replace((char)160, ' '); //replace nobr with space
Run Code Online (Sandbox Code Playgroud)