我正在尝试将此 csv 文件中的数据导入到 MATLAB,其中包含 3 列和 524 行。
我只被允许使用低 I/O 命令,例如 fopen、fscan、fprintf...所以我从以下命令开始:
Filename ='Text.csv';
FileID=fopen(Filename, 'r');
Header = fgetl(Filename);
我单击“运行”来检查它是否已正确导入,但是我的变量 FileID 一直显示为 1,然后是 2,然后是 3,每次单击“运行”时它都会不断增加 1。我需要的是一个包含所有值的表格,除非这段代码不完整,否则我无法找出哪里出错了。
“如何对每一行使用 fgetl?只是这样吗?
fgetl(FileID); fgetl(FileID);
”通常,您会希望对每一行执行一些操作,而不是仅仅读取并丢弃。
这是一个示例文件:
y Fred
n Karen
y Janice
y John
这里有一些代码可以阅读并用它做一些事情:
FileID=fopen(Filename, 'r');
while ~feof(FileID)
thisline = fgetl(FileID);
if thisline(1) == 'y'
disp(thisline)
end
end
fclose(FileID)
这是输出:
y Fred
y Janice
y John