2014-10-09 159 views
0

如果在格式的.txt文件Matlab的閱讀TXT格式的文件

姓名,家庭,1,2,3,3,3,3

這意味着前兩列是字符串,其餘爲整數

如何讀取前兩列作爲字符串的向量,並將另一個矩陣讀取爲數值。

回答

0

使用textscan

這樣做,所以你知道什麼是由線發生線是在下面的代碼段的
fileID = fopen('sometextfile.txt'); 
C = textscan(fileID,'%s %s %f %f %f %f %f %f','Delimiter',','); % assuming you want double data types, change as required 
fclose(fileID); 
celldisp(C) % C is a cell array 
1

方式一:

fid = fopen('textfile.txt'); 
clear data 

tline = fgetl(fid); 
n = 1; 
while ischar(tline)   
    data(n,:) = strsplit(tline(1:end),', '); 
    n=n+1; 
    tline = fgetl(fid); 
end  

fclose(fid); 

dataStrings = data(:,1:2); 
dataValues = str2double(data(:,3:end)); 

其中數據包含一切字符串類型,dataStrings僅包含前2列作爲字符串,而dataValues包含其餘列的類型爲double。

這樣你就可以得到簡單的矩陣,這意味着你不必擔心結構或單元陣列。