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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
如题,像'0.268843750000D+03'或者'-0.130385160446D-07'这样已经以科学计数法表示的字符串,我想把它转化成它所表示的双精度数字,在MATLAB里有处理这样问题的函数吗?* X  S( l! _- L: t& M& Z
$ H! Z2 I# x; Q: y3 w/ t

$ f1 N5 `' M# m6 P; @& }) \" }# g2 U5 F* [& C
我试过str2double()函数,但这样得出来的结果总是显示NaN,所以想请教一下这类问题应该如何处理
$ C8 o- C  [, A7 [* M$ W
3 i# A+ f0 P) H8 x' X
  • x='0.250215843477D+00'
  • x =
  • 0.250215843477D+00
  • >> x=str2double(x)
  • x =
  •    NaN! G# u8 E/ J% P5 G' c- U" N

. n% ~9 Q* r3 N4 r  @
; s. O8 p6 H5 W8 [7 ~0 j; @
* f& ?; V( W7 W( W1 F: e% F
1 j* q1 d9 m( b( ?5 a/ h

该用户从未签到

3#
发表于 2020-7-30 19:36 | 只看该作者
你哪个D,matlab好像不认。# F! g6 O# p% e) H& S+ i5 }; a
你吧D换成e" u0 n1 {$ A) ^$ F: G% C
>> num = strfind(x,'D');2 w+ B0 ^2 y& o7 w; @
>> x(num) = 'e'
* v  T7 _& Y5 [; {4 \; I0 g. N% ~# Z( A- \  r7 `
x =
7 }. E4 W2 y) c9 d
& [: f& y) R7 N, w, j) p/ `0.250215843477e+00
% O, J, i3 l7 m% e; v, \" q( E/ A0 X+ A& ~7 s/ @; E
>> str2double(x) %精度自己设置
3 ]- P: |; J# x( \6 C& K# s! m: o
' a  f/ z( F- X) O: ]9 Yans =  g% n; I- {4 }& n( z( C2 k

! R4 H7 p+ }" {* p( {' Z  k- e    0.2502
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-6-23 04:48 , Processed in 0.078125 second(s), 26 queries , Gzip On.

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

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

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