Re: [討論] 讀取檔案的問題

作者: s871526117 (安安)   2017-08-30 15:58:27
※ 引述《sintyy ( )》之銘言:
: 請問各位,我現在有個檔案內容的一部分如下
: 12
: 34
: 56
: 78
: 9a
: bc
: de
: f0
: 每個數值是一個16進位的數
: 我現在想要把這一堆數據分割成以下四堆
: a1 = [1 3 5 7];
: a2 = [2 4 6 8];
: a3 = [9 b d f];
: a4 = [a c e 0];
: 目前我只會用textread('data.txt', '%s') 把檔案以string讀進來
: 但碰到兩問題
: 一是我不會分割左右兩數字
: (我知道可以在text檔中用空白鍵隔開兩數據來分割,但數據實在太多這樣做沒效率)
: 二是我不會利用中間的空行判斷斷點
: 請問各位可以賜教嗎??
試試看這樣子呢?
clear
clc
f=fopen('data.txt');
frewind(f);
i=1;
a1=[];
a2=[];
while ~feof(f)
d=fgetl(f);
if isempty(d)
i=i+1;
eval(['a',num2str(2*i-1),'=[];']);
eval(['a',num2str(2*i),'=[];']);
else
eval(['a',num2str(2*i-1),'=[a',num2str(2*i-1),',d(1)];']);
eval(['a',num2str(2*i),'=[a',num2str(2*i),',d(2)];']);
end
end
f=fclose(f);

Links booklink

Contact Us: admin [ a t ] ucptt.com