jidaxiaochen 发表于 2012-5-10 18:31

处理数据保存到txt里面,但是要用分号隔开,该怎么做啊?

我处理得到的数据如下:
dd =
   654   360   686   365
   655   360   684   367
   672   361   674   320
   653   361   653   321
   671   361   673   320
   652   362   651   323
   673   362   675   321
   674   362   677   322
想把这些数据保存到txt中,但是要保存成添加分号的形式,如下:
dd =
   654   360   686   365;
   655   360   684   367;
   672   361   674   320;
   653   361   653   321;
   671   361   673   320;
   652   362   651   323;
   673   362   675   321;
   674   362   677   322;
我用过save,dlmwrite来保存,但是save保存成科学技术法的形式,而用dlmwrite则保存成每四个中间有个黑色的方块,不知道怎么样才能每四个用分号隔开,还有请问这要保存完之后,调用该txt的时候是不是4列8行呢?请帮忙解决一下,非常感谢!

ChaChing 发表于 2012-5-10 21:13

help fprintf

但好奇LZ为何有这一需求!?

代勤 发表于 2012-5-11 14:55

试一下,看可不可以在excel里面的时候,最后的一列用“;”号代替,这样生成txt的时候,最后的一列数字就是;号了。我也没有用到过,楼主可以试下

jidaxiaochen 发表于 2012-5-11 15:52

回复 2 # ChaChing 的帖子

谢谢,在图形处理后得到的数据就是
dd =
   654   360   686   365
   655   360   684   367
这种形式,但是后序程序中的输入形式是dd =';这种形式的数据,我想用txt先将处理数据保存,然后再调用,这样就可以使程序更具有普遍性,就省得动手输入了。
还有一个想请教一下,我用手动形式加的分号和中括号,但是当用fopen打开的时候看到size(PN)是1行的8列的,其实我想得到size为2行4列的数据结构形式,查了一下午没查出怎么读入数据实现,本人刚学matlab,请帮忙解决一下,谢谢!

ChaChing 发表于 2012-5-11 16:43

jidaxiaochen 发表于 2012-5-11 15:52 static/image/common/back.gif
回复 2 # ChaChing 的帖子

谢谢,在图形处理后得到的数据就是


如个人猜测
若是这样, 为何不直接使用save及load即可!?

jidaxiaochen 发表于 2012-5-11 16:57

回复 5 # ChaChing 的帖子

谢谢回复!我用过save和load来实现,但是save的格式还是处理后的格式,不符合在下步骤中输入的格式啊,上一步程序得到的结果是
dd =
   654   360   686   365
   655   360   684   367
但是在下个程序中输入的格式为dd =';   这样就应该将上步程序处理的结果进行添加分号、中括号处理保存成txt,这样读出的格式才符合要求吧,我是这样认为的,不知道是不是这个样子的?表达模糊还请见谅!

qiandashuai 发表于 2012-5-11 21:22

本帖最后由 qiandashuai 于 2012-5-11 21:25 编辑

调用此文件的后续程序不能修改么...
我想一个笨方法:
num2str('') + 空格
把数组变成字符串进行处理,我觉得行

ChaChing 发表于 2012-5-14 01:01

回复 6 # jidaxiaochen 的帖子

个人还是以为直接使用save及load即可!
还有为何不直接转置再save?

jidaxiaochen 发表于 2012-5-18 18:16

谢谢回复,问题已解决。
页: [1]
查看完整版本: 处理数据保存到txt里面,但是要用分号隔开,该怎么做啊?