日期:2014-05-18  浏览次数:20957 次

請問如何將List<string> 裡面的值轉換成double後, 拿來做運算呢?
希望各位大大能幫助我解決這項問題,

  List<string> mmXX = new List<string>();
  List<string> mmZZ = new List<string>();
  double x = 1505.4617;
  double y = 3200;

  for (int i = 0; i < tList.Count; i++)
  {
  for (int j = 1; j < tList[i].Tendon_X.Count; j++)
  {

  mmXX = tList[j].Tendon_X;
  mmZZ = tList[j].Tendon_Z;
   
到這邊程式都沒有問題, mmXX 和mmZZ 也都能分別抓到資料裡面的值,
現在的問題是卡在 要如何把 mmXX 和mmZZ 轉換成double 來和x 與y 做加減運算呢?
加減運算是擺在for 迴圈裡做計算

我用過 double.Parse(mmXX) 和 Convert.ToDouble(mmXX) 來轉換過,
但是都無法成功......

希望有人能幫助我, 小弟感激不盡!!!

------解决方案--------------------
var tmmXX =mmXX .Select(t=>Convert.ToDouble(t));
------解决方案--------------------
mmXX = tList[j].Tendon_X;
mmZZ = tList[j].Tendon_Z;

mmXX是泛型
Convert.ToDouble(mmXX[0]);
Convert.ToDouble(mmZZ[0]);
试试
------解决方案--------------------
list<string>中你不可能每个都能转换撒..所以必须去判断..2楼的就是很好的例子..或者你自己写个..
先遍历整个list<string>
if(!convert.todouble(mm))
liststring.remove(mm);
剩下的都是能转换的