C# .NET:读取/写入二进制字符串
编辑:不回答;我自己找到了解决方案。 我有一些代码可以做到这一点:C# .NET:读取/写入二进制字符串,c#,encoding,ascii,character,C#,Encoding,Ascii,Character,编辑:不回答;我自己找到了解决方案。 我有一些代码可以做到这一点: using (var stream = new FileStream(args[1], FileMode.Create)) { using (var writer = new BinaryWriter(stream)) { writer.Write(ip.Iso3166CountryCode); ... } } Iso3166CountryCode是一个带有两个字符(“US”)的字符串 当我试图从文件中读取“我们
using (var stream = new FileStream(args[1], FileMode.Create))
{
using (var writer = new BinaryWriter(stream))
{
writer.Write(ip.Iso3166CountryCode);
...
}
}
Iso3166CountryCode
是一个带有两个字符(“US”)的字符串
当我试图从文件中读取“我们”时:
// line is a byte[] from the file with the first 1024 bytes
UnicodeEncoding.Default.GetString(line.Take(2).ToArray());
我没有找回“我们”,我找回了一些奇怪的ASCII字符。如何从这个二进制文件中读取两个国家代码字符
编辑:没关系。我将writer.Write(ip.Iso3166CountryCode)
更改为writer.Write(UnicodeCode.Default.GetBytes(ip.Iso3166CountryCode))
,它可以工作。尝试将writer.Write(ip.Iso3166CountryCode)
更改为writer.Write(UnicodeCodeincode.Default.GetBytes(ip.Iso3166CountryCode))
,应该可以工作了!) 您可以回答自己的问题,并将其标记为已接受。这比编辑你的问题以获得答案要好。或者删除你的问题…..嗯,这就是我在你回答之前发布的确切解决方案。好吧,笑脸有点小-我看到“不回答”,我的鼠标开始自行复制粘贴。。。