Byte array to string - a better method
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
byte[] to string in c#
我有一个从流中读取的字节数组。我想把它转换成一个字符串。
这对我很有用:
1 |
但我觉得有更好的方法吗?有?
1 | Encoding.UTF8.GetString(bytearr); |
您需要知道正确的编码并使用它,UTF8只是一个例子。根据对您有用的东西,我猜您可能有UTF8或ASCII。
您可以使用
1 | string myString = Encoding.UTF8.GetString(bytearr); |
http://msdn.microsoft.com/en-us/library/aa332098(v=vs.71).aspx
你可以只用
1 | string result = Encoding.UTF8.GetString(bytearr); |
1 | var str = System.Text.Encoding.UTF8.GetString(byte[]) |
您应该使用编码实例
来自MSDN
1 2 3 4 | public UTF8Encoding( bool encoderShouldEmitUTF8Identifier, bool throwOnInvalidBytes ) |
参数
编码器houldemitutf8标识符
类型:System.Boolean如果为true,则指定提供Unicode字节顺序标记;否则为false。
throwonInvalidBytes(throwonInvalidBytes)
类型:System.Boolean
如果为true,则指定在检测到无效编码时引发异常;否则为false。
所以用
1 2 3 |