1

我有字符串

string a = "234234324\r\n";

我想将此字符串解析为整数而丢失此\r\n部分,因此int应仅包含来自字符串 a like 的数字int b = 234234324

ps 字符串不一定包含该\r\n部分,关键是我只想使用字符串中的数字。

我试过了,Convert.ToInt32(a)但我有错误。

4

5 回答 5

8
int b = int.Parse(new string(a.Where(char.IsDigit).ToArray()));
于 2013-08-09T21:14:28.163 回答
7

您只需要Trim-- 删除所有前导和尾随空格。

int b = int.Parse(a.Trim());
于 2013-08-09T21:13:05.407 回答
2

试试这个:

string a = "234234324\r\n";
string justNumbers = new String(a.Where(Char.IsDigit).ToArray());

注意:显然,这需要 LINQ。

现在您可以转换字符串而不必担心字符串中包含非数字,如下所示:

Convert.ToInt32(justNumbers);
于 2013-08-09T21:13:13.183 回答
1

您必须使用Trim后跟Int32.TryParse

int b = Int32.TryParse(a.Trim(), out num);
于 2013-08-09T21:13:39.033 回答
0

试试这个(你需要添加对Microsoft.VisualBasic的引用):

using Microsoft.VisualBasic;

class Program
{
    static void Main(string[] args)
    {
        var a = "234234324\r\n";
        int b = int.Parse(Conversion.Val(a).ToString());
    }
}
于 2013-08-09T22:16:26.013 回答