将字符串转换为字符错误消息

本文关键字:错误 消息 字符 字符串 转换 | 更新日期: 2023-09-27 18:29:01

无法将字符串转换为char错误消息。我正在努力编写一个程序,例如,允许用户输入1800HIETHC,并将所有数字返回给他们。我已经被卡住了。。。。有什么帮助或建议吗?

    static void Main(string[] args)
    {
        char number = ' ';
        int numb = 0;
        Console.WriteLine("Please enter the telephone number...");
        number = Console.ReadLine();
        while (number <= 10)
        {
            if (number == 'A')
            {
                numb = 2;
            }
        }
        Console.WriteLine(numb);
    }
}

}

将字符串转换为字符错误消息

Console.ReadLine为您提供string

stringchar的的集合

试试这个

string number = "";
int numb = 0;
Console.WriteLine("Please enter the telephone number...");
number = Console.ReadLine();
for(int i=0; i<number.Count; i++)
{
    if (number[i] == 'A')
    {
        //...
    }
}

Console.ReadLine()返回字符串而非字符。因此不能将其分配给变量号。将其分配给字符串后,可以通过执行myString[0] 来从字符串中提取字符

如果我理解正确,

string number = "1800HIETHC"; //Console.ReadLine() reads whole line, not a single char.
int[] nums = Digits(number);


static int[] Digits(string number)
{
    return number.Where(char.IsLetterOrDigit).Select(ToNum).ToArray();
}
static int ToNum(char c)
{
    int[] nums = { 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9 };
    if (char.IsDigit(c)) return c - '0';
    c = char.ToUpper(c);
    return nums[c - 'A'];
}