Extract n lines from a text file
2 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(1 个)
per isakson
2012-6-1
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
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Text Data Preparation 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!