0
>> str = '0009.51998'
>> str2num(str)
またははMatlabの
>> sscanf(str,'%f')
ans = 9.5200
で特定の形式で、numに文字列を変換する私の代わりにこれを取得したい:
ans = 9.51998
>> str = '0009.51998'
>> str2num(str)
またははMatlabの
>> sscanf(str,'%f')
ans = 9.5200
で特定の形式で、numに文字列を変換する私の代わりにこれを取得したい:
ans = 9.51998
あなたはそれを取得しています。表示されている小数点以下4桁まで四捨五入されています。より多くの精度を確認するにはformat long
を実行してください。
>> str = '0009.51998';
>> x = sscanf(str, '%f')
x =
9.5200
>> format long
>> x
x =
9.519980000000000
>>
またsscanf
の代替としてstr2double
を使用することができます。 str2num
よりも安全で柔軟性があります。これはstr2num
がeval
コマンドを使用しているためです。たとえば、次のように試してみてください。
str2num(' figure();imshow(''peppers.png'')')
結果に驚くかもしれません。
+ 1のピーマンの数字。 –
すでに文字列がある場合、なぜnum2strを訴えていますか? (私はこれがあなたの質問を変えない/それに答えることを実現する) –