找回密码
 注册
关于网站域名变更的通知
查看: 441|回复: 2
打印 上一主题 下一主题

这是关于一个数据类型转换的问题:请问科学计数法表示的字符串怎样转化成双精度数据?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-30 13:46 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
如题,像'0.268843750000D+03'或者'-0.130385160446D-07'这样已经以科学计数法表示的字符串,我想把它转化成它所表示的双精度数字,在MATLAB里有处理这样问题的函数吗?( n' s3 f8 {1 m

, C" P* }% b1 ~0 @" m$ F ' ]' K& _9 q9 `2 c
/ {9 O6 [4 N4 H$ s3 K
我试过str2double()函数,但这样得出来的结果总是显示NaN,所以想请教一下这类问题应该如何处理 : w: \" u+ O1 f% [/ ]; S
1 I. @/ a0 S" l) u7 F  U
  • x='0.250215843477D+00'
  • x =
  • 0.250215843477D+00
  • >> x=str2double(x)
  • x =
  •    NaN: n1 m: a& a- x2 e6 f. e9 Y
9 W; z+ [0 l/ k

! n% D4 ?8 D9 M% [
4 r/ @* H, }4 t5 G
( M& h& d4 |8 ?4 x

该用户从未签到

3#
发表于 2020-7-30 19:36 | 只看该作者
你哪个D,matlab好像不认。# x' ?0 e1 p8 b# Z, c' r6 _
你吧D换成e) D2 ~5 P) {6 w2 Y" d' h/ H
>> num = strfind(x,'D');% i- R8 f: ~4 [" X1 Q
>> x(num) = 'e': c4 P& w1 L4 b3 ]
9 G# f! m, n4 L, V
x =; X. I8 ?1 R( m
: a- x% |/ U9 z* P( y) s, h
0.250215843477e+00
0 N( \( v0 }5 o1 |9 S" z- m, f+ l6 e5 c! x3 X
>> str2double(x) %精度自己设置
& k7 J* I  h) B7 J
! r+ t8 O- ~  `2 B1 t" z% Z1 x; {. u% K7 aans =
. ?  {( o8 A; S* g
. Q0 n0 D8 b7 N7 q$ B; k* }' k    0.2502
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-24 10:17 , Processed in 0.078125 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表