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

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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x

    ; p, @4 i* Z: H1 i% n  Amatlab工作空间有以下数据(全是数值数据,没有字符,应该是mat格式的)
    0 o- _; y. K  Q) u0 }3 X7 Zdata3 =
    ' c- ^0 i# I4 X/ d& U3 t   100   200   400   550   700
    * j+ k6 B% ~* ]6 N1 y    46    99   110   160   120
    - ]  D/ V: ?; V" ~0 [9 T# |   300   319   455   666   7772 Q# u, c/ H( L& m
    想将其以txt格式输出,试了几个输出函数,都存在问题。
    # @& Y) _: V6 v0 ]! b' r% p% W1.save save test3.txt data3 -ascii    %不加-ascii则txt文件是:MATLAB 5.0 MAT-file, Platform: PCWIN, Created on:........加乱码6 n+ f* A# c) X
    txt文件中结果如下
    ; t! k* g+ X, j* j0 ?0 R  1.0000000e+002  2.0000000e+002  4.0000000e+002  5.5000000e+002  7.0000000e+0027 Y6 v* |  i' ]' \* p5 O$ G- d
      4.6000000e+001  9.9000000e+001  1.1000000e+002  1.6000000e+002  1.2000000e+0024 @- O8 p: d; T! N
      3.0000000e+002  3.1900000e+002  4.5500000e+002  6.6600000e+002  7.7700000e+002  I7 {% i( }* H# O' w: `
    科学计数法啊,看着太费劲了
      o+ a1 r( P( ^* j2 `2.dlmwrite('test3.txt',data3,'precision','%10.0f')0 P4 m( i: I$ N3 |" e5 Z$ M
    结果如下:* H/ b. p" N) A$ y1 c% i5 k
             100,       200,       400,       550,       700        46,        99,       110,       160,       120       300,       319,       455,      
    ! A! y, A$ q8 K! H" ~666,       777' B; ^  ?4 l' X5 w, z0 ?  S) |
    各列之间以逗号分隔,行之间以空分隔,显示的也不是分行显示了,看着就同样费劲+别扭。
    % O" s" p. @, t$ f3.dlmwrite('test3.txt',data3,'delimiter', '\t')
    7 O* [' `2 @6 ?9 F( r3 T结果如下
    ( K  @- i8 |/ F( q% j. h100 200 400 550 70046 99 110 160 120300 319 455 666 777
    3 C+ r4 u0 J* E0 U下一行第一个数据接到了前一行最后一个数据后,虽然,用复制再粘贴到excel中,发现实际上行数是对的,但是为什么显示成这样呢3 l! J1 C$ Y$ S# q) W6 g1 Z! V" f
    附件是第三种情况的test3.txt文件+ q6 h* u# }7 X: s3 s& R6 ]/ ?9 _
    $ W) n* u& V& x
    各位大侠帮忙看看怎么解决
    % q$ j3 G& \: {1)如果用save指令,如何不保存科学计数法?) n# F6 }/ Q% h6 R# }9 S9 J$ u* Q8 f9 C8 ]
    2)如果用dlmwrite指令,如何显示成分行的形式?
    4 }& G. x0 D8 E# S或者其它指令的也可以。谢谢了!
    / ^5 X' s) S6 ~/ ]0 v$ G9 A在网上找了一些诸如“使用文本文件(.txt)进行数据存取的技巧总结(相当的经典)”等发现不是那么回事。另外,在我的另一个求助中,txt文件的数据中有字符数据,读取和保存,问题就更多一些了。同样希望有大侠能帮忙。
    : d5 d  y2 L$ `9 {

    该用户从未签到

    2#
    发表于 2020-4-1 17:43 | 只看该作者
    我一般都用fopen
    $ j6 z7 ^1 |5 C8 }fid1=fopen('simu_ve.txt','w');                                                       %%%%需要改文件名称的地方
    ) R$ @' S4 }7 W5 Z/ G8 Tcount=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-11-23 21:06 , Processed in 0.156250 second(s), 23 queries , Gzip On.

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

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

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