How to save data from a file with text and numbers?
    5 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    Abhiram B R
 il 14 Mag 2021
  
    
    
    
    
    Modificato: per isakson
      
      
 il 16 Mag 2021
            I have to load a file to Matlab with words and numbers and perform few operations. Structure of the file to be loaded is as follows:
Step
0
Number
1000
Box Dimension
0 10 0
10 0 0
0 0 10
ID Type 
1 2
2 3
3 1
.....
i need to load this file and save lines starting from 'Step' to 'ID Type' to another file. Is it possible to do such operations in MATLAB?
2 Commenti
  Mathieu NOE
      
 il 15 Mag 2021
				sure 
use readlines or fileread 
T = fileread('data2.txt');
TT = split(T);
% or 
TTT = readlines('data2.txt');
Risposta accettata
  per isakson
      
      
 il 15 Mag 2021
        
      Modificato: per isakson
      
      
 il 16 Mag 2021
  
      "load this file and save lines starting from 'Step' to 'ID Type' to another file"  Including the "ID Type" block - or not ?
This script includes the  "ID Type" block. I assume that the sample data is followed by a specific word. I've replaced the ending "...." with the string "Something else". 
%%
chr = fileread( 'Untitled3.txt' );
txt = regexp( chr, '^.+(?=Something else)', 'match','once' );
fid = fopen( 'another_file.txt', 'wt' );
fprintf( fid, '%s', txt );
fclose( fid );
type another_file.txt
"and perform few operations"  In what form do you want which data?
Second thought: 
The function, regexp(), is powerful and fast but not the easiest to get the hang of. In this case the statement 
txt = regexp( chr, '^.+(?=Something else)', 'match','once' );
can be replaced by
pos = strfind( chr, 'Something else' );
txt = chr(1:pos(1));    % pos(1) in case there are many 'Something else' in the file
or
txt = extractBefore( chr, 'Something else' );
I should have used extractBefore() in my answer. It's easy to use and fast.
Più risposte (0)
Vedere anche
Categorie
				Scopri di più su Characters and Strings in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!