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

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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x

    4 P6 N1 U- s% ematlab工作空间有以下数据(全是数值数据,没有字符,应该是mat格式的)2 d6 A8 L, W4 _) V5 ^* f
    data3 =
    % B: k; _* T8 a& H8 g6 ?. u" v   100   200   400   550   700
    6 j8 U. [* k! Y5 _  r5 [% l" H    46    99   110   160   120
    , U- [" N! r) E, S4 F" O5 @! L* O   300   319   455   666   777
    / s% E  F, e; L7 p1 ^* V想将其以txt格式输出,试了几个输出函数,都存在问题。* |* n" Y3 z5 |+ j1 p6 V
    1.save save test3.txt data3 -ascii    %不加-ascii则txt文件是:MATLAB 5.0 MAT-file, Platform: PCWIN, Created on:........加乱码
    2 i  L. q4 F0 ?0 ktxt文件中结果如下
    4 `# k1 X4 e* ]* ^, ?9 O- O. B- |4 {  1.0000000e+002  2.0000000e+002  4.0000000e+002  5.5000000e+002  7.0000000e+002
    " L; z, S% A7 p6 e8 N! P2 v  4.6000000e+001  9.9000000e+001  1.1000000e+002  1.6000000e+002  1.2000000e+002
    * v: F) J# \8 ^( G  ~/ j5 \- a4 H+ p  3.0000000e+002  3.1900000e+002  4.5500000e+002  6.6600000e+002  7.7700000e+002& [' [" @% d& |0 x( l5 c5 ?
    科学计数法啊,看着太费劲了5 a0 e& h1 |8 r
    2.dlmwrite('test3.txt',data3,'precision','%10.0f')5 e3 Z! u; |9 ]( A: B- O2 Y
    结果如下:
    5 m* T: l2 b! {+ f2 ^" |* H         100,       200,       400,       550,       700        46,        99,       110,       160,       120       300,       319,       455,       - U  I/ W1 h  r) {# X% Z
    666,       7779 F; X4 H* l) ~5 A
    各列之间以逗号分隔,行之间以空分隔,显示的也不是分行显示了,看着就同样费劲+别扭。& i2 u* ~8 g/ t! H1 Y9 J
    3.dlmwrite('test3.txt',data3,'delimiter', '\t')
    ; C8 `+ F0 }- f1 N2 W8 H+ [结果如下
    0 n' V/ p9 i' s$ \" ^100 200 400 550 70046 99 110 160 120300 319 455 666 7773 d8 J& {0 r6 t+ G( Y4 Y
    下一行第一个数据接到了前一行最后一个数据后,虽然,用复制再粘贴到excel中,发现实际上行数是对的,但是为什么显示成这样呢, {6 z7 l$ C' P/ m6 B# }- x3 E
    附件是第三种情况的test3.txt文件
    ( U/ P" ~9 o1 Q' k& u8 C2 ^" j; |% [
    : u6 z5 w- v: a$ a9 g3 H各位大侠帮忙看看怎么解决' f+ k; W. y, P0 z. z6 ?
    1)如果用save指令,如何不保存科学计数法?' W) o( D* ~9 y$ P$ [+ D( O
    2)如果用dlmwrite指令,如何显示成分行的形式?, X$ m- i2 l, k* U5 h1 N, n
    或者其它指令的也可以。谢谢了!% N# u& r3 O7 P: W( q
    在网上找了一些诸如“使用文本文件(.txt)进行数据存取的技巧总结(相当的经典)”等发现不是那么回事。另外,在我的另一个求助中,txt文件的数据中有字符数据,读取和保存,问题就更多一些了。同样希望有大侠能帮忙。
    5 j- A6 F/ r: f9 S: s

    该用户从未签到

    2#
    发表于 2020-4-1 17:43 | 只看该作者
    我一般都用fopen
    ! G' I+ O" H* j* z( Rfid1=fopen('simu_ve.txt','w');                                                       %%%%需要改文件名称的地方
    ' t! P& w3 t( ~; H: ~1 Ecount=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-8-14 11:47 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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