2016-11-10 55 views
0

我想閱讀每行包含數字的文件。下面是如上所示的格式 -閱讀由逗號和製表符分隔的行

0,0,0 1 0 0 0 
0.02,0.1,0.98 8.77 0.985292 0.112348 0.112348 
0.04,0.2,1.96 8.77 0.985292 0.112348 0.224696 

的例子中,前三個數字由逗號分隔,之後所有的其餘號碼由選項卡在線路分離。因此,不可能使用dlmread或textscan。有什麼辦法解決它?謝謝!

+0

如在此[鏈接]描述可以使用的fscanf(https://in.mathworks.com/help/matlab/ref/fscanf.html)。在'fscanf'中,你可以指定文件的格式。 –

回答

2

是的,你應該在你的函數中添加兩個參數:

Delimiter %choose the delimiter

MultipleDelimsAsOne %Treat Repeated Delimiters as One

選項1:

小 「竅門」,您可以選擇更多如果您輸入一個結構作爲輸入,則使用一個分隔符:{',',' '}

Result = textscan(fileID,'%f %f %f %f %f %f %f','Delimiter',{',',' '},'MultipleDelimsAsOne',1); 

選項2:(應該工作)

這一次我不使用MultipleDelimsAsOne,但我確切的分隔符可以是逗號或製表符(用\ t)。

Result = textscan(fileID,'%f %f %f %f %f %f %f','Delimiter',{',','\t'}); 
相關問題