我正在将一些东西从 VB 转换成 C#。此语句的语法有问题:
if ((searchResult.Properties["user"].Count > 0))
{
profile.User = System.Text.Encoding.UTF8.GetString(searchResult.Properties["user"][0]);
}
然后我看到以下错误:
Argument 1: cannot convert from 'object' to 'byte[]'
The best overloaded method match for 'System.Text.Encoding.GetString(byte[])' has some invalid arguments
我尝试根据 this 修复代码发帖,还是没有成功
string User = Encoding.UTF8.GetString("user", 0);
有什么建议吗?
最佳答案
如果您已经有一个字节数组,那么您将需要知道使用什么类型的编码将它变成该字节数组。
例如,如果字节数组是这样创建的:
byte[] bytes = Encoding.ASCII.GetBytes(someString);
你需要把它转回像这样的字符串:
string someString = Encoding.ASCII.GetString(bytes);
如果您可以在继承的代码中找到用于创建字节数组的编码,那么您应该已设置。
关于c# - 在 C# 中将字符串转换为字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16072709/