Difference between revisions of "CompareFiles/de"
From Lazarus wiki
Jump to navigationJump to searchm |
|||
Line 81: | Line 81: | ||
<br> | <br> | ||
--[[User:Olaf|Olaf]] 08:10, 30 August 2013 (CEST) | --[[User:Olaf|Olaf]] 08:10, 30 August 2013 (CEST) | ||
− | [[Category:Code | + | |
+ | |||
+ | {{AutoCategory}} | ||
+ | [[Category:Code Snippets/de]] |
Revision as of 23:50, 29 October 2015
│
Deutsch (de) │
Das Unterprogramm prüft, ob beide Dateien identisch sind.
Mit dem Unterprogramm können sowohl Binär- als auch Textdateien verglichen werden.
uses
FileUtil, ...;
...
function funDateienSindGleich(const conStrDateiname1, conStrDateiname2: string): boolean;
var
txtDatei1: file of char;
txtDatei2: file of char;
chrZeichen1: char;
chrZeichen2: char;
blnDateienSindGleich: boolean = True;
begin
Result := False;
// Wenn beiden Dateien eine unterschiedliche Grösse haben,
// dann beende das Unterprogramm
if FileSize(conStrDateiname1) <> FileSize(conStrDateiname2) then
exit;
AssignFile(txtDatei1, UTF8ToSys(conStrDateiname1));
Reset(txtDatei1);
AssignFile(txtDatei2, UTF8ToSys(conStrDateiname2));
Reset(txtDatei2);
while (not EOF(txtDatei1)) or (not EOF(txtDatei2)) do
begin
Read(txtDatei1, chrZeichen1);
Read(txtDatei2, chrZeichen2);
// Wenn beide Zeichen unterschiedlich sind,
// dann beende die Schleife
if chrZeichen1 <> chrZeichen2 then
begin
blnDateienSindGleich := False;
break;
end;
end;
CloseFile(txtDatei1);
CloseFile(txtDatei2);
Result := blnDateienSindGleich;
end;
Aufruf unter Windows:
...
if funDateienSindGleich('E:\Test.txt', 'E:\Test1.txt') = True then
...
...
Aufruf unter Linux:
...
if funDateienSindGleich('/home/user/Test.txt', '/home/user/Test1.txt') = True then
...
...
--Olaf 08:10, 30 August 2013 (CEST)