Re: [.NET] 讀值後運算

作者: evil2004 (忘卻深淵)   2016-04-22 12:03:29
※ 引述《foreverwhat (奇)》之銘言:
: 不好意思
: 還是不知道該怎麼寫
: 像我現在的程式 簡單先寫看儀器讀出來的值
: console.write(aaa)
: 這邊看到的值是 1,+1.55121667E-006
: 但是我想把它寫成跟儀器端上看到的 1551.2167nm
: 那我嘗試寫成
: buf = Split(aaa,",")
: a = Convert.ToString(buf)
: console.write(a)
: 看到的值就會變成 System.String[]
: 還是不知道要怎麼單把 +1.55121667E-006拉出來計算
: 再麻煩各位前輩指點指點 謝謝
我真的看不是很懂科學記號的表示法,
所以該乘幾個0, 和E後面的正負號數字你自己考慮!
假設
Dim aaa As String = "1,+1.55121667E-006"
Dim Value, Tmp As String
buf = Split(aaa, ",") 'buf(0) = "1" buf(1) = "+1.55121667E-006"
Value = CDbl(Split(buf(1), "E")(0)) 'Value = 1.55121667
Tmp = CInt(Split(buf(1), "E")(1)) 'Tmp = -6
剩下就是考慮Tmp
看要把Value乘除幾個10即可
沒Run過, 不知道能不能過 你自己試試
作者: foreverwhat (奇)   2016-04-22 13:23:00
感謝e大 大致可以了 我再稍微修改一下 謝謝!!!之前buf=split完就一直想拿split來用原來是想錯方向了

Links booklink

Contact Us: admin [ a t ] ucptt.com