|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
7 A0 [% c7 D% s) E$ L# c
matlab工作空间有以下数据(全是数值数据,没有字符,应该是mat格式的)
8 ? X% d5 n$ x0 [$ A( z" Qdata3 =& L9 h5 f$ c, m# N' e/ D
100 200 400 550 700
2 D; |4 I8 l4 f; k) X7 c. { 46 99 110 160 120% P/ z1 Q/ E+ G8 f; d
300 319 455 666 777
4 M. g6 N# L8 {2 D想将其以txt格式输出,试了几个输出函数,都存在问题。
. m8 i+ C/ q# G7 W1.save save test3.txt data3 -ascii %不加-ascii则txt文件是:MATLAB 5.0 MAT-file, Platform: PCWIN, Created on:........加乱码
* R( S5 v8 S# r8 b& q0 wtxt文件中结果如下
0 |" @( x8 Y3 f7 h/ I' i- p 1.0000000e+002 2.0000000e+002 4.0000000e+002 5.5000000e+002 7.0000000e+002& [6 x9 y1 S: ~
4.6000000e+001 9.9000000e+001 1.1000000e+002 1.6000000e+002 1.2000000e+002; c% i: i+ T9 a; N1 p3 M
3.0000000e+002 3.1900000e+002 4.5500000e+002 6.6600000e+002 7.7700000e+002; j# t2 c9 O; D& _4 S/ H* A% ^
科学计数法啊,看着太费劲了3 W! m' b, h, n' N
2.dlmwrite('test3.txt',data3,'precision','%10.0f'), V. w3 W3 i8 [2 x$ k
结果如下:! Q7 N. k3 o3 ^# T5 d# T
100, 200, 400, 550, 700 46, 99, 110, 160, 120 300, 319, 455,
& C+ d. z5 Z+ x# |3 `& j* W666, 777* v: C. a! r5 \7 c7 ]0 ]
各列之间以逗号分隔,行之间以空分隔,显示的也不是分行显示了,看着就同样费劲+别扭。
2 e. @& L0 r; l' b x# O3.dlmwrite('test3.txt',data3,'delimiter', '\t')
7 G- G) a1 k0 t$ @3 ?# O' I% R结果如下
% t( B$ D# O) V) t100 200 400 550 70046 99 110 160 120300 319 455 666 777
9 @8 U# U9 }& {) I2 K8 N/ l# a下一行第一个数据接到了前一行最后一个数据后,虽然,用复制再粘贴到excel中,发现实际上行数是对的,但是为什么显示成这样呢# E& \0 b1 M" ~4 z
附件是第三种情况的test3.txt文件
9 \* b) I" X! p, b9 q
9 Y z* h- G* L0 l4 x* g/ i: g6 P各位大侠帮忙看看怎么解决: e/ [ K f, T% k/ N8 a0 i
1)如果用save指令,如何不保存科学计数法?. l0 L6 V" N$ _: \3 E# f
2)如果用dlmwrite指令,如何显示成分行的形式?# |1 O) L3 w7 ]1 q" k
或者其它指令的也可以。谢谢了!
) c8 h2 `/ D) P6 ?. h2 }' W% A3 ~/ c在网上找了一些诸如“使用文本文件(.txt)进行数据存取的技巧总结(相当的经典)”等发现不是那么回事。另外,在我的另一个求助中,txt文件的数据中有字符数据,读取和保存,问题就更多一些了。同样希望有大侠能帮忙。 |
|