![]() |
Probleme mit File Of Byte/Char
Hallöle!
Ich hab da ein kleines Problem und zwar möchte ich Dateien verschlüsseln. Das wäre acuh nicht mein problem, aber wie bekomm ich denn die Dateien am besten eingelesen? Ich hab zwar rausgeunden, dass ich das mit file of byte machen kann also:
Delphi-Quellcode:
Das hier ist absolut kein Problem. Ich bekommen genau die gleiche Datei.
var
xy, m : File of Byte; x : integer; begin Pfad := Edit1.Text; AssignFile(xy,pfad); reset(xy); rewrite(m,'C:\MeineDat.exe'); reset(m); for x := 0 to FileSize(xy)-1 do begin read(xy,zz); write(m,zz); end; closefile(xy); closefile(m); end; Aber sobald ich das Ganze jetzt irgendwo zwischenspecihern möchte, geht das schief:
Delphi-Quellcode:
var l : Array of Byte; xy, m : File of Byte; x : integer; Pfad, Pfad1 : String; begin Pfad := Edit1.Text; Pfad1 := Edit2.Text; AssignFile(xy,pfad); reset(xy); rewrite(m,Pfad1); reset(m); SetLength(l, Filesize(xy)); for x := 0 to FileSize(xy)-1 do begin read(xy,l[x]); // Hier hab ich noch was um den Fortschirtt anzuzeigen end; for x := 0 to Length(l) do begin write(m,l[x]); // Hier hab ich noch was um den Fortschirtt anzuzeigen end; closefile(xy); closefile(m); end; Kann mir jetzt irgendjemand sagen, wo hier der Fehler ist? wenn ich kleine TXT dateien wähle werden die zwar noch nichtig angezeigt aber die dateigröße der beiden ist unterschiedlich. Sobald ich EXE dateien oder ähnliches nehme weichen diese verdammt arg ab und funktionieren uach nichtmehr! Was mach ich denn Falsch (kann ja nur ne kleinigkeit sein oder?) Ich komm aber auch nach stundenlanger fehlersuche nicht drauf! Kann ich das Gaze auch gleich als File of char öffnen (wenn ich dann den QT so anpasse damit es keine Fehler mehr gibt) oder kann ich deswegen auch wieder probleme mit den Dateien bekommen? |
Re: Probleme mit File Of Byte/Char
Zitat:
Sollte das rewrite() nicht ein assignfile() sein?! |
Re: Probleme mit File Of Byte/Char
Zitat:
Delphi-Quellcode:
Hier wird 1 Byte zuviel geschrieben:
AssignFile(m,Pfad1);
rewrite(m);
Delphi-Quellcode:
for x := 0 to Length(l) do begin
Zitat:
Gruss Reinhard |
Re: Probleme mit File Of Byte/Char
Hallo Danke für die schnellen Antworten.
Bin grad leider nur auf durchmarsch. Probiere es heute abend aus aber ihr meint, mit
Delphi-Quellcode:
solte es gehen?! oder ist da ncoh was falsch ?
var
l : Array of Byte; xy, m : File of Byte; x : integer; Pfad, Pfad1 : String; begin Pfad := Edit1.Text; Pfad1 := Edit2.Text; AssignFile(xy,pfad); reset(xy); //DAS HIER IST GEÄNDERT AssignFile(m,Pfad1); rewrite(m); //BIS HIER SetLength(l, Filesize(xy)); for x := 0 to FileSize(xy)-1 do begin read(xy,l[x]); // Hier hab ich noch was um den Fortschirtt anzuzeigen end; for x := 0 to Length(l)-1 {DAS IST AUCH GEÄNDERT} do begin write(m,l[x]); // Hier hab ich noch was um den Fortschirtt anzuzeigen end; closefile(xy); closefile(m); end; Aber kann das Length(1) zu einem größenunterschied von ~ 300KB führen?!? |
Re: Probleme mit File Of Byte/Char
Ja konnte es xD
Okay damit hat sich das Thema auch erledigt :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz