2015-05-25 46 views
1

我有串是這樣的:輸入字符串的不C#中網正確的格式int.parse

string line = "77.139305\t28.795975" 

和我單獨兩個整數這樣的:

string lat = line.Substring(0, 9); 
string lng = line.Substring(10, 9); 

whic準確分別爲這樣的2個數字: "77.139305""28.795975"爲lat和lng。

int latitude,longitude; 
    bool result = Int32.TryParse(lat, out latitude); 
        if (result) 
        { 
         col1[i] = latitude; 
         Console.WriteLine("lat: " + col1[i]); 
        } 
        else 
        { 
         if (lat == null) lat = ""; 
         Console.WriteLine("Attempted conversion of lat '{0}' failed.", lat); 
        } 
        bool result2 = Int32.TryParse(lng, out longitude); 
        if (result2) 
        { 
         col2[i] = longitude; 
         Console.WriteLine("longit: " + col2[i]); 
        } 
        else 
        { 
         if (lng == null) lng = ""; 
         Console.WriteLine("Attempted conversion of lng '{0}' failed.", lng); 
        } 

因此,它總是excutes其他條件,如果我不處理此異常else條件那麼它給「輸入字符串的不正確的格式在C#中網int.parse」 如何解決這個問題?

+0

嗯,他們不是整數(他們有小數),所以這並不令人驚訝。你真的想解析爲整數嗎? –

回答

2

您正在傳入浮點數並使用整數解析方法。

改爲使用Double.Parse解析方法。

+1

@ merling2011謝謝..我有bcme笨笨bcz的頭痛..容易檢測到非常簡單的事情:'( – ajpr