MATLAB对比两txt文件内容是否一致

实现功能

对比两txt每行的内容是否一致,若一致则输出’完全一致’,不一致则输出’第 %d 行不一致’;若行数不等则输出’文件1比文件2少/多%d行’

MATLAB代码

注意修改代码中txt文件名

clear all;close all;clc; %清理工作区,关闭所有窗口,清空文本
% 读取第一个文本文件的内容
file1 = fopen('txt1.txt', 'r');%修改地址为对应文件名及地址,单独文件名则需要txt与此代码同层级
data1 = textscan(file1, '%s', 'Delimiter', '\n');
fclose(file1);

% 读取第二个文本文件的内容
file2 = fopen('txt2.txt', 'r');%修改地址为对应文件名及地址,单独文件名则需要txt与此代码同层级
data2 = textscan(file2, '%s', 'Delimiter', '\n');
fclose(file2);

% 获取每个文件的行数
numLines1 = length(data1{1});
numLines2 = length(data2{1});

% 比较每一行的内容是否相等
isMatch = true;
for i = 1:min(numLines1, numLines2)
    if ~strcmp(data1{1}{i}, data2{1}{i})
        fprintf('第 %d 行不一致\n', i);
        isMatch = false;
    end
end

% 检查文件行数是否一致
if numLines1 < numLines2
    fprintf('文件1比文件2少%d行\n', numLines2 - numLines1);
    isMatch = false;
elseif numLines1 > numLines2
    fprintf('文件1比文件2多%d行\n', numLines1 - numLines2);
    isMatch = false;
end

% 输出结果
if isMatch
    disp('完全一致');
end

练习文本

将下列文本复制到txt中创建两个txt,可修改或删除行进行对比验证。

00c4,
00c3,
00c3,
00c2,
00c2,
00c2,
00c1,
00c1,
00c0,
00c0,
00c0,
00bf,
00bf,
00be,
00be,
00bd,
00bd,
00bc,
00bc,
00bb,
00ba,
00ba,
00b9,
00b9,
00b8,
00b8,
00b7,
00b6,
00b6,
00b5,

在线资源

有很多优秀的在线文本对比工具,搜索引擎中输入在线文本对比可以找到。粘贴文本内容进行对比。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值