How to remove lines in a .txt file?
Mostra commenti meno recenti
Hello,
Basically, I have a .txt file in which I have a first string of characters, a second string of characters divided in 5 columns and finally the following lines are divided in 5 columns as well and filled with numbers.
As a scheme explains better than my bad english, the layout is the following one :
Nodal displacements (DX,DY,DZ) [Code 163] (Vibration Mode Number)
Node Component X Component Y Component Z Modulus
11424 1 -0.1784254 -0.14097163 1.02552846
11428 0.99940151 -0.17841142 -0.14048249 1.02487528
11427 0.99868083 -0.17837693 -0.13998173 1.02409795
11426 0.99781752 -0.17834243 -0.13945551 1.02317821
11425 0.99682903 -0.17832828 -0.13891853 1.02213867
11423 0.97537661 -0.17893241 -0.14097127 1.0016233
11437 0.97482145 -0.17892055 -0.14049338 1.00101339
...
I'd like to develop a routine that reads and writes the .txt file to delete the two first lines of characters, i.e.,
Nodal displacements (DX,DY,DZ) [Code 163] (Vibration Mode Number)
Node Component X Component Y Component Z Modulus ,
to be able to have a 5-columns array with nothing but only numbers that I can load in Matlab...
Thanks in advance. O.
Risposta accettata
Più risposte (2)
Hazem
il 13 Giu 2017
My favorite solution is this (start at line 2, col 0):
M = dlmread('filename.txt', ' ', 2, 0)
I have been given the following code by a teacher at university:
function allData =ReadVerTxtData(filename,NumVar)
fid=fopen(filename,'r');
tline1 = fgetl(fid); %%Vernier Format 2
tline2 = fgetl(fid); %Untitled.cmbl 4/7/2008 20:19:02 .
tline3 = fgetl(fid); %Latest
tline4 = fgetl(fid); %Time Potential
tline5 = fgetl(fid); %t Pot
tline6 = fgetl(fid); %s V
tline7 = fgetl(fid); %
tline8 = fgetl(fid); %0 7.60683760684
allData=fscanf(fid,'%f',[NumVar,Inf]); %
fclose(fid);
It reads data from a text file and ignores the first 8 lines. You could add and delete lines as you desire.
Edit: I should probably add that the two inputs of the function is: your file directory + name AND the number variables / lines you want printed into matlab, 5 in your case.
2 Commenti
Olivier
il 16 Apr 2013
Simon Kumm
il 19 Lug 2016
Note your "allData" dimensions. Maybe you got to transpose!
Categorie
Scopri di più su Workspace Variables and MAT Files in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!