AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

AnsiString speichern und laden

Ein Thema von Willie1 · begonnen am 9. Mär 2021 · letzter Beitrag vom 16. Mär 2021
 
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#22

AW: AnsiString speichern und laden

  Alt 14. Mär 2021, 20:52
Damit er erstmal dennoch weiterkommt
ohne extras die delphi nicht besitzt
für das Experiment habe ich mal was getippst hier in Editor, in der Hoffnung das wichtigste zu zeigen.

Delphi-Quellcode:
uses System.NetEncoding, System.IniFiles;

function WilliEnc(const AValue: AnsiString): AnsiString;
var
  Nibble: AnsiString;
begin
  Nibble := AValue;
  // mach hier dein nibble ding


  // hier verpacken wir alles in ein Base64
  Nibble := TNetEncoding.Base64.Encode(Nibble);
  Exit(Nibble);
end;

function WilliDec(const AValue: AnsiString): AnsiString;
var
  Bytes: TBytes;
  Nibble: AnsiString;
begin
  // hier wird aus dem base64 wieder ein ansistring, und zwar nur ein ansistring (!)
  Bytes := TNetEncoding.Base64.DecodeStringToBytes(AValue);
  Nibble := TEncoding.ANSI.GetString(Bytes);
  // ab dieser stelle ist der geladene base64 kodierte inhalt wieder dein original ansistring
  // also mach ab hier dein nibble ding :-)


  Exit(Nibble);
end;

function LoadData: string;
var
  Ini: TIniFile;
begin
  Result := '';
  if FileExists('name.ini') then
    begin
      Ini := TIniFile.Create('name.ini');
      try
        Result := WilliDec(Ini.ReadString('Sektion', 'Ident', ''));
      finally
        Ini.Free;
      end;
    end;
end;

procedure SaveData(const AValue: string);
var
  Ini: TIniFile;
begin
  Ini := TIniFile.Create('name.ini');
  try
    Ini.WriteString('Sektion', 'Ident', WilliEnc(AValue));
  finally
    Ini.Free;
  end;
end;



// exemplarische Anwendung

procedure TForm1.btnLoadClick(Sender: TObject);
begin
  Edit1.Text := LoadData;
end;

procedure TForm1.btnSaveClick(Sender: TObject);
begin
  SaveData(Edit1.Text);
end;
nicht getestet, nur getippt

...roter text beim speichern oh oh...


//edit
an Thomas: ich bin voll auf deiner seite!
Gruß vom KodeZwerg

Geändert von KodeZwerg (14. Mär 2021 um 20:57 Uhr)
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:32 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