【发布时间】:2026-01-23 21:30:01
【问题描述】:
我正在使用 matlab 开发一个用户界面,它允许浏览和加载文本文件并显示一些曲线。我遇到了一个问题,我的文件文本是一组十进制数,matlab 将这些数字读取为两列。 这是一个例子:你在这里找到我正在处理的文件:
运行这段代码后:
[filename pathname] = uigetfile({'*.txt'},'File Selector');
fullpathname = strcat(pathname,filename);
text = fileread(fullpathname); %reading information inside a file
set(handles.text6,'string',fullpathname)%showing full path name
set(handles.text7,'string',text)%showing information
loaddata = fullfile(pathname,filename);
xy = load(loaddata,'-ascii','%s');
t = xy(:,1);
i = xy(:,3);
handles.input1 = i;
handles.input2 = t;
axes(handles.axes1);
plot(handles.input1,handles.input2)
曲线看起来很紧,所以我使用命令窗口检查了 xy= load(loaddata,'-ascii') 的结果,问题出现了!
所以我现在有 12 列而不是 6 列!你能帮帮我吗? 我尝试使用 strrep(data,',','.') 但它不起作用!
【问题讨论】:
-
所以你的问题是关于解析文件?您如何发布 actual 文件内容并仅显示相关的代码行。这与 GUI 无关。
-
您好,我现在编辑了我的问题以使其更清楚,您可以检查一下:)
-
您可以将实际数据粘贴到问题中而不是发布屏幕截图吗?
标签: matlab text-files