在这种情况下我怎样才能乘以一个字符串?

How can I multiply a string in this case?

我有密码。在这段代码中,我有一个带有文本的 label1:“0,5 分钟”,从子字符串中我得到“0,5”,现在我需要将它从分钟转换为毫秒,例如 0,5 * 60 * 1000 = 30000。我可以因为这个错误所以不这样做:

Input string was not in a correct format.

我该怎么做?

private async void button2_Click(object sender, EventArgs e)
{
    string num = label1.Text.Substring(0, label1.Text.IndexOf(" min"));
    int mul = Convert.ToInt32(num) * 60 * 1000;

    textBox1.Text = $"{num} - {mul}";
    await Task.Delay(mul);
}

根据您收到的确切错误,您可能希望将 , 替换为 .(尽管最好指定一个明确的 CultureInfo)。

那么你可以使用double.TryParse(num, out value);

您可能还想将其从 int 更改为 doubledecimal(如果需要精度,请使用 decimalas double and float are inexact, approximate, types)。