有没有办法自定义二进制编写器写入文件的方式,以便我可以从C ++程序读取文件?
例如:
myBinaryWriter.Write(myInt);
myBinaryWriter.Write(myBool);
在C ++中:
fread(&myInt, 1, sizeof(int), fileHandle);
fread(&myBool, 1, sizeof(bool), fileHandle);
编辑:从我所看到的,如果一个字符串的长度足够小以适应一个字节,那就是它写入的方式,如果我想用C ++读回来那就不好了。
答案 0 :(得分:1)
如果你想保证二进制兼容性,可能c#中最简单的方法就是抛弃二进制写入器,只使用一个流来自己编写字节。这样您就可以完全控制输出数据
另一种方法是创建一个可以使用c ++ / cli编写数据的程序集,这样就可以直接与托管代码中的c ++兼容。
答案 1 :(得分:0)
您可以选择一些选项: