输入字符串在c#net int.parse中的格式不正确

时间:2015-05-25 09:34:09

标签: c# .net parsing

我有这样的字符串:

string line = "77.139305\t28.795975"

我将这两个整数分开:

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

whic正好将这两个数字分开: 对于lat和lng,"77.139305""28.795975"

  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);
                  }

因此它总是可以执行其他条件,如果我不在其他条件下处理此异常,那么它会在c#net int.parse&#中提供"输入字符串格式不正确34; 如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

您正在传递浮点数并使用整数解析方法。

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