首页 > 解决方案 > 为什么不能通过 Convert.ToInt 将 Console.ReadLine 转换为 int

问题描述

所以我刚开始编写代码,发现这里的这个例子不起作用,但是使用 int.TryParse() 它会起作用。否则使用 Convert.Byte() 它也可以。那是什么背景?

using System;

namespace timezones
{
    class Program
    {
        static void Main(string[] args)
        {
            int timeSwitzerland = Convert.ToInt(Console.ReadLine());

        }
    }
}

标签: c#integerconsole.readline

解决方案


正如我经常看到的那样,我将发布官方字符串到数字转换指南

您可以通过调用各种数字类型(int、long、double 等)上的 Parse 或 TryParse 方法或使用 System.Convert 类中的方法将字符串转换为数字。

Convert.ToInt32 方法在内部使用 Parse。Parse 方法返回转换后的数字;

在这两种情况下都如此有效地使用Int.Parse

现在在您的情况下,选项是Convert.ToInt{Enter extected integer size}

在此处输入图像描述


推荐阅读