Использование textscan для чтения определенных строк

Я пытаюсь прочитать данные из текстового файла, используя textscan из Matlab. В настоящее время приведенный ниже код считывает строки с 1 по 4. Мне нужно, чтобы он читал строки с 5 по 8, затем строки с 9 по 13 и так далее. Как бы я этого добился?

fileID=fopen(fileName);
num_rows=4;
nHeaderLines = 2; 
formatSpec = '%*s %*s %s %s %*s %*s %*s %f %*s';
dataIn = textscan(fileID,formatSpec,num_rows,'HeaderLines',nHeaderLines, 'Delimiter',',' );
fclose(fileID);

person user3698120    schedule 02.06.2014    source источник
comment
Можете ли вы привести пример содержимого ваших файлов, а также formatSpec и nHeaderLines?   -  person Marcin    schedule 02.06.2014
comment
Содержание файла Идентификация TEMP GGSA ABCD Дата HrMn I Тип QCP Temp Q 829039,10000,20350311,0053,7,FM-15, , 62.0,5, 382919,10000,20350311,0153,7,FM-15, , 65.4, 5, 030291,10000,20350311,0253,7,FM-15, , 68.4,5, продолжается более 300 строк..... nHeaderLines = 2; formatSpec = '%*s %*s %s %s %*s %*s %*s %f %*s';   -  person user3698120    schedule 02.06.2014
comment
Если файл не слишком велик, вы можете прочитать весь файл, а затем просмотреть полученную ячейку или матрицу, чтобы получить указанные строки.   -  person Nishant    schedule 02.06.2014
comment
Я так понимаю, у вас опечатка? (5-8 - 4 ряда, 9-13 - 5 рядов)   -  person Rody Oldenhuis    schedule 02.06.2014
comment
Как сказал Нишант, просто прочитайте весь файл. Кажется, что вы делаете это в любом случае. 1:4,5:8,9:12,...,конец-3:конец   -  person ASantosRibeiro    schedule 02.06.2014
comment
оно работает. Спасибо вам всем!   -  person user3698120    schedule 02.06.2014


Ответы (1)


Использовать

file = fopen('myfile');             
content = textscan(file,'%s','delimiter','\n');
fclose(file);

и у вас есть все строки в вашем файле в виде массива ячеек строк. Затем возьмите любое количество строк и обработайте их по своему усмотрению.

person Trilarion    schedule 02.06.2014