1
16
在上尝试静态函数
编辑
你在比较数组,而不是字符串。它们是不相等的,因为它们引用两个不同的数组;使用
|
2
7
当您有原始字节(8位可能不可打印字符)并希望将其作为.NET字符串进行操作并将其转换为字节时,可以使用
而不是UTF8编码。这种编码可以获取任何8位值并将其转换为.NET 16位字符,然后再次返回,而不会丢失任何信息。 在上面描述的特定情况下,使用二进制文件,除非所处理的数据长度不变,否则您将无法“处理头中的元数据”并使事情正常工作。例如,如果标题包含
你想把ABC改成DEF,这应该可以按你的意愿工作。但是,如果你想把abc改为wxyz,你必须重写“c”后面的字节,否则你(本质上)会把所有的东西都移到右边一个字节。在典型的二进制文件中,这会把事情搞得一团糟。 如果“abc”后面的字节是空格或空字符,那么编写更大的替换数据可能不会造成麻烦——但您仍然不能在.NET字符串中用wxyz替换abc,使其更长——您必须用wxyz替换abc后面的任何内容。考虑到这一点,您可能会发现,只需将数据保留为字节,然后一次只写一个字节就可以了。 |
3
5
由于.NET字符串使用Unicode字符串的事实,您不能再像C中的人那样这样做了。在大多数情况下,您甚至不应该 尝试 从字符串<->字节数组来回切换,除非内容实际上是 文本 .
我必须澄清这一点:
在.NET中,如果
|
4
3
您的问题似乎是您比较字节数组的方式:
这将始终返回false,因为您正在比较字节数组的地址,而不是它包含的值。比较字符串数据,或者使用比较字节数组的方法。您也可以这样做:
|
7BeholdeR7 · 文件夹的重量超过其中的文件(六倍) 2 年前 |
ilteris · 为什么程序在fscanf后崩溃 2 年前 |
Peaceful · 使用fscanf读取C中具有未知行数的文件 2 年前 |
NOCi · 如何将Tensorflow的结果记录到CSV文件 2 年前 |
Oakzeh · 如何在字符串索引之前读取文件并删除字符 2 年前 |