Difference between revisions of "CompareFiles/de"
From Free Pascal wiki
Jump to navigationJump to search (OUGH!!! `if someBoolean = true then …`! My eyes are bleeding!) |
m (Fixed syntax highlighting; deleted category already in page template) |
||
Line 1: | Line 1: | ||
{{CompareFiles}} | {{CompareFiles}} | ||
− | + | ||
− | + | ||
− | Das Unterprogramm prüft, ob beide Dateien identisch sind. | + | Das Unterprogramm prüft, ob beide Dateien identisch sind. |
− | Mit dem Unterprogramm können sowohl Binär- als auch Textdateien verglichen werden. | + | |
− | + | Mit dem Unterprogramm können sowohl Binär- als auch Textdateien verglichen werden. | |
− | <syntaxhighlight> | + | |
+ | |||
+ | <syntaxhighlight lang=pascal> | ||
uses | uses | ||
FileUtil, ...; | FileUtil, ...; | ||
Line 54: | Line 56: | ||
end; | end; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ||
Aufruf unter Windows: | Aufruf unter Windows: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
... | ... | ||
Line 66: | Line 69: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ||
Aufruf unter Linux: | Aufruf unter Linux: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
... | ... | ||
Line 78: | Line 82: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Latest revision as of 01:00, 12 February 2020
│
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') then
...
...
Aufruf unter Linux:
...
if funDateienSindGleich('/home/user/Test.txt', '/home/user/Test1.txt') then
...
...