在String.Reverse之后,ToString中出现错误

Cha*_*aos 2 c# wpf

当应用程序运行时,IDE会告诉我输入字符串的格式不正确.

(Convert.ToInt32(_subStr.Reverse().ToString().Substring(4, _subStr.Length - 4))*1.6).ToString() 
Run Code Online (Sandbox Code Playgroud)

我不知道如何在Reverse()这里使用.

Tho*_*que 8

类中没有Reverse方法String,因此您使用的方法实际上是Enumerable.Reverse扩展方法.这个编译因为String实现IEnumerable<char>,但结果不是字符串,它是另一个实现IEnumerable<char>.当你打电话给你ToString()时,你得到这个:System.Linq.Enumerable+<ReverseIterator>d__a01 [System.Char]`.

如果要将其转换IEnumerable<char>为字符串,可以像这样点:

string reversed = new string(_subStr.Reverse().ToArray());
(Convert.ToInt32(reversed.Substring(4, _subStr.Length - 4))*1.6).ToString()
Run Code Online (Sandbox Code Playgroud)

但请注意,它不是一种正确的反转字符串的方法,在某些情况下,由于Unicode代理项对和组合字符,它将失败.请看这里那里的解释.