首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

string转double错误,提示未处理的format错误

2012-05-31 
【求助】string转double异常,提示未处理的format异常我想将一个txt文件中的数据读入内存中,可是运行的时候在

【求助】string转double异常,提示未处理的format异常
我想将一个txt文件中的数据读入内存中,可是运行的时候在
r["X"] = double.Parse(numbers[2]);
处提示异常啊,提示输入字符串的格式不正确。
这是什么情况啊,怎么解决啊?向高手请教
代码如下:

public GetDataClass() : base()
  {
  m_table = new DataTable("members");  

  m_table.Columns.Add("ID", typeof(string));ID
  m_table.Columns.Add("ItemName", typeof(string)); 
  m_table.Columns.Add("X", typeof(double)); // X坐标  
  m_table.Columns.Add("Y", typeof(double)); // Y坐标
  m_table.Columns.Add("ItemSate", typeof(string)); 
  }
 
  /// <summary>
  /// 将txt读入内存
  /// </summary>
  /// <param name="filePathName"></param>
  public DataTable ReadTxtToMem(string filePathName)
  {
  string str;

  StreamReader streamreader = new StreamReader(filePathName);
   
  while ((str = streamreader.ReadLine()) != null)
  {
  DataRow r = m_table.NewRow();
  string[] numbers = str.Split(new char[] { ',' });
   
  r["ID"] = numbers[0];  
  r["ItemName"] = numbers[1];
  r["X"] = double.Parse(numbers[2]);
  r["Y"] = double.Parse(numbers[3]);  
  r["ItemSate"] = numbers[4];

  m_table.Rows.Add(r);
  }

  streamreader.Close();
  return m_table;

  }


[解决办法]
string[] numbers = str.Split(new char[] { ',' });
你在这句加个断点不就知道numbers里面是什么了 看看第三个数numbers[2]是什么值
[解决办法]
设置断点到:r["X"] = double.Parse(numbers[2]);
F5运行到这里时,把numbers[2]拖到监视窗口,看看值是什么。。。。

热点排行