我想用来[~, ~, temp] = xlsread('1.csv','A:A');
获取 1 行 CSV 文件的第一列1.csv
。
1.csv
仅包含一行:
5B0E8795E18013D0FBC33558F0512832,3,7,1,练习,榨汁机,榨汁机,真,假,2347.0,0
但是返回temp
的是 <1048576x1> 单元格。不temp
应该是 <1x1> 单元格吗?
该参数'A:A'
应仅返回第一列的现有行,如xlsread() 文档中的“读取数据列”示例所示。由于temp
是 <1048576x1> 单元格,因此似乎 using'A:A'
返回整个列,包括不存在的行(1048576 是 Microsoft Excel 2010 中的最大行数)。
使用textscan()
工作正常(=datatemp
在以下代码段中将只有 1 行):
fid = fopen('1.csv','r');
datatemp = textscan(fid, '%s %d %d %d %s %s %s %s %s %d %d', 'delimiter',',', 'CollectOutput',true)
fclose(fid);
但是我不明白为什么xlsread()
无法正常工作。我使用 MATLAB R2012a 64 位、Microsoft Excel 2010 和 Windows 7 x64。