最佳答案
我以前从来没有碰到过这种情况,但是我现在碰到了,而且很惊讶我不能找到一种真正简单的方法来将 IEnumerable<char>
转换成 string
。
我能想到的最好的方法是 string str = new string(myEnumerable.ToArray());
,但是,对我来说,这似乎会创建一个新的 char[]
,然后从中创建一个新的 string
,这似乎很昂贵。
我原以为这是内置在。NET 框架的地方。还有更简单的方法吗?
对于那些感兴趣的人,我之所以要使用它是为了使用 LINQ 来过滤字符串:
string allowedString = new string(inputString.Where(c => allowedChars.Contains(c)).ToArray());