Import and modify " .txt" files
    5 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
Hi
I have some ".txt" files with this structure :
useless
useless
useless
...
data
data
...
useless
useless
useless
data
...
And I would like to have a .txt file like this :
data
data
data
...
I just know that each first line of data section begins with '1' but the length of the headerline (useless) is not fixed ! So I would like to iterate until lines begins with '1' and then keep the data.
How would you do that the easiest way ?
Thanks a lot
5 commentaires
Réponses (2)
  Thorsten
      
      
 le 26 Nov 2015
        Copy those lines that have four numbers:
fid = fopen('file.txt', 'r');
fid2 = fopen('file2.txt', 'w');
line = fgets(fid);
while line ~= -1
  [~, count] = sscanf(line, '%f');
  if count == 4
    fprintf(fid2, '%s', line);
  end
  line = fgets(fid);
end
fclose(fid)
fclose(fid2)
6 commentaires
  johnmay
 le 26 Nov 2015
        2 commentaires
  Walter Roberson
      
      
 le 27 Nov 2015
				Before the loop:
   n = 2;    %whatever is appropriate
   fmt = repmat('%f ', 1, n);
   fmt(end:end+1) = '\n';    %newline, unrelated to the variable 'n'
In the loop:
[data, count] = sscanf(line, '%f');
if count >= n
  fprintf(fid2, fmt, data(1:n));
end
Voir également
Catégories
				En savoir plus sur Logical dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


