声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1319|回复: 8

[综合讨论] 读取fre格式的matlab函数。

[复制链接]
发表于 2008-9-22 17:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
导出的FRE格式 的声压文件,我每次都要把文件里的数据逐个调开,因为如果直接导入到MATLAB 里,会有很NAN出现,也就是说不识别,必须把带有负号的数据与前面的隔开,这样逐个调,很费力 ,请问各位高手,有方便的方法吗?多谢
回复
分享到:

使用道具 举报

发表于 2008-9-22 18:07 | 显示全部楼层
呵呵,在matlab逐行读取,判断-号位置,在其前面添加空格,再存储为另一个文件。
 楼主| 发表于 2008-9-23 12:41 | 显示全部楼层
我是这样做 的,,但是频率范围20-4000,,步长是20的话。每个场点要很多个-号,然后空格,累的眼睛都流出眼泪来了,真的要这么麻烦吗。?谢谢您的指导。
发表于 2008-9-24 20:09 | 显示全部楼层
哈哈,我的眼泪都笑出来了。
index = strfind(a,'-');
a1 = a;
for ii = 1:length(index),
a1(index(ii),index(ii)+1) = ' -';
a1 = [a1,' '];
a1(index(ii)+2:end) = a(index(ii)+1:end);
end
 楼主| 发表于 2008-9-25 10:47 | 显示全部楼层
对MATLAB不是很熟练呀。没看懂呀。我把其中一点的声压文件发上来,你看看应该怎么做呢?按照你的方法,怎么总是报错呢?

m1.txt

3 KB, 下载次数: 19

 楼主| 发表于 2008-9-25 14:58 | 显示全部楼层
第二附件是能够正确导入MATLAB的声压文件?这个是如何从SYS里面导出来的呢?怎么样调整的呢?
这个肯定不是有手工调出来的吧?那又要流眼泪了

RF1.RES.6.txt

31.99 KB, 下载次数: 14

发表于 2008-9-25 16:31 | 显示全部楼层

回复 5楼 wulai 的帖子

多利用数据记录特征
clc
filename = ['m1.txt'];   %%% Sysnoise输出的ATV文件
filename1 = ['m11.txt'];
fid  = fopen(filename,'r');
if fid == -1,    disp('Invalid datafile');    return;  end
fid1  = fopen(filename1,'w');
while 1,
    dataline1 = fgetl(fid);
    if ~ischar(dataline1),    break;     end;
    dataline11 = [dataline1(1:12),' ',dataline1(13:24),' ',dataline1(25:end)];
    fprintf(fid1,'%s\n',dataline11);
end
fclose(fid);
fclose(fid1);
发表于 2008-9-25 22:46 | 显示全部楼层
For reference :

fid = fopen('m1.txt','rt'); frewind(fid);
zzz = fscanf(fid,'%g',[3,inf]); zzz=zzz'; fclose(fid);

评分

1

查看全部评分

 楼主| 发表于 2008-9-26 09:17 | 显示全部楼层
谢谢版主和CHACHING的帮助,我会细细研究下二位的方法,再次感谢热心的两位
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-18 23:53 , Processed in 0.054991 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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