Nein, ich will an die einsen und nullen einer Datei kommen und diese möglichst in einem String oder so haben.
Also wie schon gesagt, das Laden sollte in ein String klappen. Hier ein Beispiel (wenn es ein String sein soll):
Delphi-Quellcode:
function LoadStringFromFile(AFilePath: String; var AFileString: AnsiString): Boolean;
var
FileStream: TFileStream;
begin
Result := False;
if not FileExists(AFilePath) then Exit;
FileStream := TFileStream.Create(AFilePath, fmOpenRead);
try
if FileStream.Size <> 0 then
begin
SetLength(AFileString, FileStream.Size);
FileStream.Read(AFileString[1], FileStream.Size);
Result := True;
end;
finally FileStream.Free end;
end;
function SaveStringToFile(AFilePath: String; AFileString: AnsiString): Boolean;
var
FileStream: TFileStream;
begin
Result := False;
FileStream := TFileStream.Create(AFilePath, fmCreate);
try
if Length(AFileString) <> 0 then
begin
FileStream.Write(AFileString[1], Length(AFileString));
Result := True;
end;
finally FileStream.Free end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Path: String;
TestString: AnsiString;
begin
Path := ExtractFilePath(ParamStr(0));
LoadStringFromFile(Path + 'Datei-A.exe', TestString);
SaveStringToFile(Path + 'Datei-B.exe', TestString);
end;
Das mit den Nullen und Einsen ist ein anderer Part. Da kannst du je nachdem die Bits eines Bytes auslesen, z. B. mit AND.