【发布时间】:2015-12-26 17:50:19
【问题描述】:
List<string> K = new List<string>();
byte[] tmp = K[i >> 3].SelectMany(s => Encoding.Default.GetBytes(s)).ToArray();
我想转换,但出现错误:
'System.Text.Encoding.GetString(byte[])' 的最佳重载方法匹配有一些无效参数
这样做的正确性如何?
【问题讨论】:
-
您的代码和您的错误不匹配。您在示例代码中根本没有调用
GetString,这让我认为您实际上并没有发布您正在运行的代码。 -
另外,你的例子太复杂了,隐藏了真正的问题。您的
K[i >> 3]调用返回一个string,因此您可以通过调用myString.SelectMany(s=> ,,,)来简化它,这可能有助于您自己发现问题。 -
你需要一个二维数组 byte[,] 而你只有一个一维数组。每个字符串都会创建一个 byte[] 并且 List 对象包含多个字符串。