Re: [討論] 讀取檔案的問題
※ 引述《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);
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.22.154
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1504079909.A.E27.html
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章