how to compare two files line by line?
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Zineb EL MORCHID
el 12 de Mzo. de 2016
Comentada: Adam Danz
el 20 de Nov. de 2021
I want to compare two files line by line and count how many lines they have in common , I tried the code below , but it doesn't work , somehow MATLAB stops working , ">>" just disappear
f = fopen('nv.txt','at');
fid = fopen('test.txt');
k = 0;
while ~feof(fid)
s1 = fgetl(fid);
if ~isempty(s1)
while ~feof(f)
s2 = fgetl(f);
if ~isempty(s2)
if(strcmp(s1,s2))
k = k+1;
end
end
end
end
end
fclose(fid);
fclose(f);
disp(k);
1 comentario
Image Analyst
el 12 de Mzo. de 2016
If the second line is missing in one of the files, (and the rest of the lines are just moved up one) then do you say that from line 2 on they are all different?
What if the lines are all there but in some different order?
Respuesta aceptada
MHN
el 12 de Mzo. de 2016
Editada: MHN
el 12 de Mzo. de 2016
f = fopen('nv.txt');
fid = fopen('test.txt');
k = 0;
while ~feof(fid)
s1 = fgetl(fid);
frewind(f) % start from the first line of the second file
if ~isempty(s1)
while ~feof(f)
s2 = fgetl(f);
if ~isempty(s2)
if(strcmp(s1,s2))
k = k+1;
end
end
end
end
end
fclose(fid);
fclose(f);
disp(k);
3 comentarios
MHN
el 12 de Mzo. de 2016
Please use the "accepted answer" button. Are you sure? I run the program line by line and it compares every lines include the first one.
Más respuestas (2)
Image Analyst
el 12 de Mzo. de 2016
Did you try the Compare tool on the Editor tool strip?
2 comentarios
r r
el 11 de Mayo de 2021
I have two files with similar data and I want to extract them into a file, and I also want to print the same line for the same data in the two files
Please help me
F1 = fopen('E.txt');
T1 = textscan(F1,'%s', 'delimiter', '\n');
fclose(F1);
F2 = fopen('G.txt');
tt2 = textscan(F2,'%s', 'delimiter', '\n');
fclose(F2);
T1s = char(T1{:});
T2s = char(T2{:});
[C,ix,ic] = intersect(T1s,T2s,'rows')
%%%%%%%%%%%%%%%%%%out Fiel :::
dlmwrite('R.txt',C,'%.6f');
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!