2017-05-08 88 views
-3

所以,我试图从字符串中移除一个字符。我一直在使用String.Replace,它一直在抛出异常。例外说“不能从字符串转换为字符。”这是我的代码: alphabet.Replace(alphabet[alphabetRed], String.Empty);在使用String.replace时抛出异常“无法从字符串转换为字符”

我已经试过Convert.ToChar(String.Empty);它仍然会引发异常。 任何帮助,将不胜感激,在此先感谢。

+0

请举一个小例子。 –

+0

'alphabet.Replace(alphabet [alphabetRed] .ToString,String.Empty)'' – user2366842

+1

这听起来像是编译时错误,不是例外。区分它们真的非常重要。 –

回答

1

这是因为alphabet[alphabetRed]将返回一个char并且您使用string.Empty作为重置值。因此,无论将其更改为

alphabet.Replace(alphabet[alphabetRed].ToString(), String.Empty); 

(OR)

alphabet.Replace(alphabet[alphabetRed], ''); 

如果你去通过链接的MSDN文档中,你的问题,你会看到Replace()有两个过载,其中两个参数类型必须匹配

+0

修复它。没有想到这一点,我感到非常愚蠢。非常感谢! –

0

您的方法的第一个参数是充当字符。您需要将其转换为字符串以使其工作为.Replace(String, String)

Try:alphabet.Replace(alphabet[0].ToString(), String.Empty);

相关问题