Extract n lines from a text file

Hi Everybody, i am struggling with the following problem. I need to extract, from a text file (actually an xml file, anyway) the first n lines. I know there are some functions (as fscanf) in which the user can specify the number of characters to extract, but in my case this number is variable, therefore i cannot specify a priori where it is.
An alternative could be: finding the "ending character" by identifying some key word, and then using this ending character in fscanf. But i did not find a way to identify pieces of text within a longer text.
Does anyone know a possible solution? Luciano

2 Kommentare

Oleg Komarov
Oleg Komarov am 1 Jun. 2012
Is "n" fixed?
Thomas
Thomas am 1 Jun. 2012
Can you give an example file where you want to remove the first n lines..

Melden Sie sich an, um zu kommentieren.

Antworten (1)

per isakson
per isakson am 1 Jun. 2012

0 Stimmen

Something like this might work
fid = fopen( 'cssm.txt', 'r' );
str = permute( fread( fid, '*char' ), [2,1] );
sts = fclose( fid );
cac = regexp( str, 'your_key_word', 'split' );
buf = strtrim(cac{2});
ca = textscan( buf, frmt );
or replace regexp by strfind

Kategorien

Mehr zu Large Files and Big Data finden Sie in Hilfe-Center und File Exchange

Produkte

Tags

Gefragt:

am 1 Jun. 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by