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

Matlab是怎样将数据输出为txt文件的?请大神教我

[复制链接]
  • TA的每日心情

    2019-11-19 15:32
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-4-1 10:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

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

    x

    $ h& y/ j- M5 {6 V, Pmatlab工作空间有以下数据(全是数值数据,没有字符,应该是mat格式的)
    3 z2 v' @4 d+ C; Udata3 =2 n: I! T( }5 s+ R* u: Y
       100   200   400   550   7001 r( a3 r; \; R8 g2 Y/ t
        46    99   110   160   120
    . f2 ?# ?3 c( k# J6 T* j: [   300   319   455   666   777! f; K7 ?/ @: R
    想将其以txt格式输出,试了几个输出函数,都存在问题。
    2 j& ~5 H+ i$ c$ R% S1.save save test3.txt data3 -ascii    %不加-ascii则txt文件是:MATLAB 5.0 MAT-file, Platform: PCWIN, Created on:........加乱码
    ! I( ~. ?+ L& _5 qtxt文件中结果如下% I; b& o" o1 Z# z9 m& p8 M1 W% Z
      1.0000000e+002  2.0000000e+002  4.0000000e+002  5.5000000e+002  7.0000000e+002% B8 Z6 m( H" C5 R+ t
      4.6000000e+001  9.9000000e+001  1.1000000e+002  1.6000000e+002  1.2000000e+002
    3 I1 y* l/ ?4 G  3.0000000e+002  3.1900000e+002  4.5500000e+002  6.6600000e+002  7.7700000e+002; g1 v& r  @3 e0 N5 p" O
    科学计数法啊,看着太费劲了
    8 r# ?* Y4 i) R4 d2.dlmwrite('test3.txt',data3,'precision','%10.0f')
    2 f* q. B$ B/ p5 _结果如下:4 h. `) V  C% u
             100,       200,       400,       550,       700        46,        99,       110,       160,       120       300,       319,       455,      
    ( y. [1 v' O) Z4 k* ~+ ?) I  @$ @4 {666,       777
    & z+ f( B. t$ X' m; R各列之间以逗号分隔,行之间以空分隔,显示的也不是分行显示了,看着就同样费劲+别扭。2 ~/ s6 j$ N* F: \) E" M
    3.dlmwrite('test3.txt',data3,'delimiter', '\t')/ ]& T; Y5 _2 f8 Y! |6 K$ n
    结果如下
    5 \7 Q  U6 `# y1 @: y* ]100 200 400 550 70046 99 110 160 120300 319 455 666 777
    ; Z9 \0 f7 z! A! R8 n8 O. [8 T% B4 P下一行第一个数据接到了前一行最后一个数据后,虽然,用复制再粘贴到excel中,发现实际上行数是对的,但是为什么显示成这样呢
    ( t6 e( [) U$ Q( j" T7 s- V附件是第三种情况的test3.txt文件
    % O$ d2 s1 q6 E: u; y) n& r
    ) f! y( ?, U  i0 g* N各位大侠帮忙看看怎么解决, Z0 v( v$ h' S" e7 m: y$ d5 o
    1)如果用save指令,如何不保存科学计数法?; E2 v' s: ^3 T, R8 c$ d" b' d
    2)如果用dlmwrite指令,如何显示成分行的形式?
    1 {% U: l# b) W( H或者其它指令的也可以。谢谢了!
    $ ~3 V' W: ^; d0 d) e8 B, H在网上找了一些诸如“使用文本文件(.txt)进行数据存取的技巧总结(相当的经典)”等发现不是那么回事。另外,在我的另一个求助中,txt文件的数据中有字符数据,读取和保存,问题就更多一些了。同样希望有大侠能帮忙。+ `/ ]& A1 E( A- ^0 [+ a( z  s

    该用户从未签到

    2#
    发表于 2020-4-1 17:43 | 只看该作者
    我一般都用fopen; w2 M8 u3 m, z' _1 U; e, W' U
    fid1=fopen('simu_ve.txt','w');                                                       %%%%需要改文件名称的地方
    ( j1 Y3 {0 G9 t5 ccount=fprintf(fid1,' %f \r',ve');                                                       %%%%ve:需要导出的数据名称

    该用户从未签到

    3#
    发表于 2020-4-1 17:44 | 只看该作者
    'simu_ve.txt'就是导出的txt文件名
  • TA的每日心情

    2019-11-29 15:37
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2020-4-1 17:44 | 只看该作者
    程序的第一句是说生成一个'simu_ve.txt'的txt文本,第二句是说把ve这个数据输入到'simu_ve.txt'这个文本里
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-22 10:52 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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