Matlab讀取TXT文字檔案通用程式

2021-06-19 00:04:40 字數 2633 閱讀 9039

我的資料型別是這樣的:

0.000000 0.000000 0.000000  144 144 144 [1 0] d-1

0.000000 0.000000 0.000000 145 145 145 [2 0] d-1

0.000000 0.000000 0.000000 73 73 73 [3 0] d-1

0.000000 0.000000 0.000000 90 90 90 [4 0] d-1

0.000000 0.000000 0.000000 140 140 140 [5 0] d-1

0.000000 0.000000 0.000000 31 31 31 [6 0] d-1

0.000000 0.000000 0.000000 152 152 152 [7 0] d-1

0.000000 0.000000 0.000000 141 141 141 [8 0] d-1

0.000000 0.000000 0.000000 142 142 142 [9 0] d-1

0.000000 0.000000 0.000000 97 97 97 [10 0] d-1

0.000000 0.000000 0.000000 14 14 14 [11 0] d-1

0.000000 0.000000 0.000000 45 45 45 [12 0] d-1

0.000000 0.000000 0.000000 193 193 193 [513 330] d-1

-2.042475 -4.825477 32.254028 196 196 196 [514 330] d66

-2.047885 -4.900263 32.753906 199 199 199 [515 330] d65

-2.052787 -4.975761 33.258545 200 200 200 [516 330] d64

0.000000 0.000000 0.000000 39 39 39 [1249 545] d-1

0.000000 0.000000 0.000000 59 59 59 [1250 545] d-1

0.000000 0.000000 0.000000 52 52 52 [1251 545] d-1

1.#inf00 1.#inf00 1.#inf00 50 50 50 [1252 545] d0

1.#inf00 1.#inf00 1.#inf00 59 59 59 [1253 545] d0

1.#inf00 1.#inf00 1.#inf00 64 64 64 [1254 545] d0

1.#inf00 1.#inf00 1.#inf00 65 65 65 [1255 545] d0

1.#inf00 1.#inf00 1.#inf00 71 71 71 [1256 545] d0

0.000000 0.000000 0.000000 76 76 76 [1257 545] d-1

0.000000 0.000000 0.000000 81 81 81 [1258 545] d-1

0.000000 0.000000 0.000000 78 78 78 [1259 545] d-1

0.000000 0.000000 0.000000 75 75 75 [1260 545] d-1

0.000000 0.000000 0.000000 73 73 73 [1261 545] d-1

0.000000 0.000000 0.000000 68 68 68 [1262 545] d-1

這樣的資料長度大概有1000000以上,我要把所以的數字讀出來。程式如下:

clear all

close all

dispartydata = '1.txt';

a1 = 1280*1024;

tmpfile='tmp2.mat';

fidin = fopen(dispartydata, 'r'); % 開啟原始資料檔案(.list)

fidtmp=fopen(tmpfile,'w'); % 建立儲存資料檔案(不含說明文字)

while ~feof(fidin) % 判斷是否為檔案末尾

tline=fgetl(fidin); % 從檔案讀入一行文字(不含回車鍵)

if ~isempty(tline) % 判斷是否空行

[m,n]=size(tline);

flag=1;

for i=1:n %判斷一行中有沒有相應的字元

if (tline(i)=='#')

flag=0;

break;

endend

if flag==1 % 如果是數字行,把此行資料寫入檔案

fprintf(fidtmp,'%s\n',tline);

endend

endfclose(fidin);

fclose(fidtmp);

[a,b,c,d,e,t,h,i,j] = textread(tmpfile,'%f %f %f %d %d %d [%d %d] d%d',a1);

a = [a,b,c,d,e,t,h,i,j];

delete(tmpfile);

Python 讀取txt文字檔案

python的文字檔案的內容讀取中,有三類方法 read readline readlines 這三種方法各有利弊。read read 的弊端 readline readline 的弊端 readlines readlines 的利端 readlines 的弊端 最簡單 最快速的逐行處理文字的方法 ...

Python 讀取txt文字檔案

python的文字檔案的內容讀取中,有三類方法 read readline readlines 這三種方法各有利弊。read 是最簡單的一種方法,一次性讀取檔案的所有內容放在乙個大字串中,即存在記憶體中 file object open test.txt 不要把open放在try中,以防止開啟失敗,...

MATLAB中讀取txt文字檔案的常用函式

本博文源於matlab對檔案的操作,旨在講述常用的函式及其說明。函式名說明 load 從文字檔案匯入資料到matlab工作空間 importdata dlmread 從文字檔案中讀取資料 textread 按指定格式從文字檔案或字串讀取資料 fopen 開啟檔案,獲取開啟檔案的資訊 fclose 關...