0

次のコードで、配列文字列値から int をキャストしようとすると。

   using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;


    namespace hourscount
    {
        class Program
        {
            static void Main(string[] args)
            {
                string delimiter = ":";
                string time1 = Console.ReadLine();
                string time2 = Console.ReadLine();

                if (time1 == null || time2 == null)
                {
                    Console.WriteLine("Program expects two values!");
                    Console.ReadLine();

                }
                else
                {
                    string[] time1var = time1.Split(new string[] {delimiter}, StringSplitOptions.None);
                    string[] time2var = time2.Split(new string[] { delimiter }, StringSplitOptions.None);
                    int time2Intvar1 = int.TryParse(time2var[0]);
                    int time1Intvar1 = int.TryParse(time1var[0]);
                    int time2Intvar2 = int.TryParse(time2var[1]);
                    int time1Intvar2 = int.TryParse(time1var[1]);
                    int realHours = (time2Intvar1 - time1Intvar1);
                    Console.ReadLine();
                }
            }

        }
    }

次のエラーが表示されます。エラー 1 メソッド 'TryParse' のオーバーロードはありません 1 つの引数を取ります

4

2 に答える 2

4

として使用します

int time2Intvar1;
bool isOK = int.TryParse(time2var[0],out time2Intvar1);

詳細については、

http://www.dotnetperls.com/int-tryparse

http://msdn.microsoft.com/en-us/library/f02979c7.aspx

于 2013-01-06T01:41:10.287 に答える
4

out次のパラメーターを指定する必要がありますint.TryParse

int time2Intvar1;
bool canBeParsed = int.TryParse(time2var[0], out time2Intvar1);

その後、初期化されます。

于 2013-01-06T01:43:27.630 に答える