[SOLVED] How to read data file from a specific line ?
21 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Florian
am 12 Mär. 2014
Kommentiert: KAE
am 13 Jan. 2023
Hi all,
simple problem :
- I got a data file in which 10 first lines are characters.
- Then, from the line 11, there are only floats.
- How can I read from the line 11 until the end of the file ?
Thanks for all !
Florian
0 Kommentare
Akzeptierte Antwort
Salaheddin Hosseinzadeh
am 12 Mär. 2014
Hi buddy
It's dead easy, I'm copy pasting part of a code I wrote to manipulate text files in which I read the text file line by line. anytime you us
fid1=fopen('D:\Dale Jr.PLR','r'); % This opens a file
fid2=fopen('F:\NEW_Dale Jr.PLR','r');
line_num=0;
l1='0';
l2='0';
while(ischar(l1)||ischar(l2)); % this continues until the end of file
line_num=line_num+1;
l1=fgetl(fid1); % anytime you use fgetl you read a line and next time you use it reads next
l2=fgetl(fid2);
if(isequal(l1,l2)==0)
disp(['L1=',l1])
disp(['L2=',l2])
line_num
err(line_num)=line_num;
end
end
Ok in this program I checked the content of 2 files, wanted to make sure if they are the same. Ignore the program, what's important is to use fgetl ,I include some comment for you in the code, just wanna emphasis that first time you use fgetl, it reads the first line, next time you use it it will read the second line, so you don't have to have a counter for the lines, unless you want to save the lines like I did and I assigned a variable and a counter for the variable to save all the lines. Refer to MATLAB product help for more examples and information.
Good Luck!
6 Kommentare
Walter Roberson
am 22 Jan. 2021
For earlier releases,
LINES = regexp(fileread(FILENAME_GOES_HERE), '\r?\n', 'split');
if isempty(LINES{end}); LINES(end) = []; end %end of file correction
KAE
am 13 Jan. 2023
@Walter Roberson - Can't vote up your readlines suggestion, but very helpful to learn about this.
Weitere Antworten (2)
Walter Roberson
am 12 Mär. 2014
See textscan with a HeaderLines parameter of 10
Note: you cannot use csvread() or dlmread() for this purpose.
0 Kommentare
Mireia Fontanet
am 28 Dez. 2017
Dear,
I have to txt files, one is called variables.txt and the other one is called selector.in.txt. I want to replaced the first line of variables.txt file with the second line of selector.in.txt. How can I do it?
Regards,
1 Kommentar
Walter Roberson
am 1 Jan. 2018
See https://www.mathworks.com/matlabcentral/answers/8801-replacing-and-inserting-a-text-in-an-ascii-file#comment_520585 as I answered in the other place you posted this. You should have just created a new Question.
Siehe auch
Kategorien
Mehr zu File Operations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!