2011-06-06 40 views
4

我需要从sbyte(sbyte [])数组中创建一个新的String实例。 为此,我需要将sbyte []转换为sbyte *在.net C#中不安全正常?

只能使用不安全的关键字。 是好的还是有任何其他的方法来创建从字节数组的字符串?

+2

'sbyte'在.NET中很少见;这可能是一些移植的java代码吗? 'byte'(无符号)更常见。 – 2011-06-06 05:48:05

+0

多么有趣的问题 - +1! – 2011-06-06 19:34:32

回答

1

你为什么要使用为sbyte?

Encoding.Default.GetString()(以及任何其他的编码)需要一个byte[]数组作为参数,所以你可以转换使用LINQ的sbyte[]数组,如果所有的值都是非负:array.Cast<byte>().ToArray()

+1

也许他在别的地方使用C吧 – Steve 2011-06-06 05:47:43

+0

你是绝对正确的 – Sergey 2011-06-06 05:53:44