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