大型 Unicode 列表到 Char[] c#
Large Unicode List to Char[] c#
我使用此代码将每行包含单独字符的字符串传递给 Unicode 列表。
string MultiLineCharArray = string.Join(Environment.NewLine, CharArray);
var UnicodeList = MultiLineCharArray.Select(str => Convert.ToUInt16(str)).ToList();
当逆向它时程序死了,它甚至没有尝试,非常糟糕:
for (int i = 0; i < UnicodeList.Count; i++)
{
MultiLineCharArray = string.Join(Environment.NewLine, Convert.ToChar(UnicodeList[i]));
}
我需要 MultiLineCharArray
然后将其转换为有效 Unicode 字符的 Array
(unicode = A)
遍历每一行以将其转换为单个字符串。
Unicode 列表很长 (9,000) 个元素,也许这就是程序崩溃的原因,有没有更优化的方法来做到这一点?
使用 LINQ 和字符串函数
// to populate charArray with dummy chars A through J
var charArray = Enumerable.Range(65, 10).Select(i => (char)i);
// your existing code
var multiLineCharArray = string.Join(Environment.NewLine, charArray);
var unicodeList = multiLineCharArray.Select(str => Convert.ToUInt16(str)).ToList();
// to reverse
var multiLineCharArray1 = new string(unicodeList.Select(u => (char)u).ToArray());
var charArray1 = multiLineCharArray1.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
我使用此代码将每行包含单独字符的字符串传递给 Unicode 列表。
string MultiLineCharArray = string.Join(Environment.NewLine, CharArray);
var UnicodeList = MultiLineCharArray.Select(str => Convert.ToUInt16(str)).ToList();
当逆向它时程序死了,它甚至没有尝试,非常糟糕:
for (int i = 0; i < UnicodeList.Count; i++)
{
MultiLineCharArray = string.Join(Environment.NewLine, Convert.ToChar(UnicodeList[i]));
}
我需要 MultiLineCharArray
然后将其转换为有效 Unicode 字符的 Array
(unicode = A)
遍历每一行以将其转换为单个字符串。
Unicode 列表很长 (9,000) 个元素,也许这就是程序崩溃的原因,有没有更优化的方法来做到这一点?
使用 LINQ 和字符串函数
// to populate charArray with dummy chars A through J
var charArray = Enumerable.Range(65, 10).Select(i => (char)i);
// your existing code
var multiLineCharArray = string.Join(Environment.NewLine, charArray);
var unicodeList = multiLineCharArray.Select(str => Convert.ToUInt16(str)).ToList();
// to reverse
var multiLineCharArray1 = new string(unicodeList.Select(u => (char)u).ToArray());
var charArray1 = multiLineCharArray1.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);