我有以下代码:

        static void Main(string[] args)
        {
            string prueba = "Something_2.zip";
            int num;

            prueba = prueba.Split('.')[0];

            if (!prueba.Contains("_"))
            {
                prueba = prueba + "_";
            }
            else
            {
                //The code I want to try
            }
        }


我的想法是,在其他情况下,我想在_之后拆分字符串并将其转换为int,我这样做是

num = Convert.ToInt16(prueba.Split('_')[1]);


但是我可以进行分割吗?例如num = (int)(prueba.Split('_')[1]);
有可能这样做吗?还是我必须使用Convert

最佳答案

您不能将字符串转换为整数,因此需要进行一些转换:
  我建议您在这种情况下使用Int.TryParse()
  因此,其他部分将如下所示:


else
  {
     if(int.TryParse(prueba.Substring(prueba.LastIndexOf('_')),out num))
       {
         //proceed your code
       }
     else
       {
         //Throw error message
       }
   }

关于c# - 分割字符串并将索引之一转换为int,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34522087/

10-11 22:26