Entwickler-Ecke

Multimedia / Grafik - Text aus externer Datei laden.


No0B - Sa 08.05.10 17:45
Titel: Text aus externer Datei laden.
Wie lade ich einen Text aus einer externen Datei in ein Label ?


Xion - Sa 08.05.10 17:48

Was ist eine externe Datei?

An sich, such mal nach AssignFile, das ist knackig schnell. Ini ist toll für strkturierte daten


jaenicke - Sa 08.05.10 17:48

TStringList oder AssignFile + ReadLn oder gleich ein Memo, ganz wie du willst. ;-)


No0B - Sa 08.05.10 17:51

Hab da ne txt datei im selben Ordner die auch Ascii Art enthält. Geht das überhaupt mit dem anzeigen ich meine mit den ganzen Zeilenumbrüchen Sonderzeichen usw?


ffgorcky - Sa 08.05.10 17:58

Also die einfachste Methode (die ich auch immer anwende) ist mit einem Memo:

Delphi-Quelltext
1:
2:
MemoAnzuzeigenderText.Lines.LoadFromFile(AnzuzeigendeTextDatei.txt);
LabelAnzuzeigenderText.Caption:=MemoAnzuzeigenderText.Text;

So sollte es eigentlich gehen.


ALF - Sa 08.05.10 18:01

theoretisch kannst Du dies ausparsen, aber da es hin und wieder vor kommt, das selbst die Bilderchen auch Buchstaben haben können, kann es schon mal zu falschen ergebnissen führen! Wird also nicht so leicht!
Dann lieber alles in ein Memo rein und von dort das wichtige übernehmen!

edit: zu langsam

Gruss Alf


jaenicke - Sa 08.05.10 18:03

user profile iconffgorcky hat folgendes geschrieben Zum zitierten Posting springen:
Also die einfachste Methode (die ich auch immer anwende) ist mit einem Memo:
Ja, aber dann hast du die Anzeige ja doppelt, das ist ja Blödsinn. Wenn, dann eine TStringList und von dort in den Label.

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
var
  FileContents: TStringList;
begin
  FileContents := TStringList.Create;
  try
    FileContents.LoadFromFile(ExtractFilePath(ParamStr(0)) + 'Data.txt');
    YourLabel.Caption := FileContents.Text;
  finally
    FileContents.Free;
  end;


ALF - Sa 08.05.10 18:05

Nix für ungut aber bei AScII Art sind leider auch kleine/ grössere Bilderchen mit drin. und das ist leider kein Text.
Gruss ALf


jaenicke - Sa 08.05.10 18:08

Das sind dann ja auch mehrere Zeilen, geht theoretisch auch mit einem Label, aber da eignet sich ein Memo viel besser. Darin lässt sich das dann schon anzeigen, einfach Schriftart auf Courier z.B., Hintergrund auf grau und Rahmen weg, dazu ReadOnly auf true und Cursor entsprechend setzen, schon siehts aus wie ein Label.

Die "Bildchen" sind normale Schriftzeichen, das hängt nur von der Schriftart ab.


No0B - Sa 08.05.10 18:20

Wie siehts damit aus, das sind keine Buchstaben.

http://images.bitsuck.com/_data/2009-08-27/TheFilmbotFiles.png


jaenicke - Sa 08.05.10 18:28

Nein, Buchstaben nicht, aber normale Schriftzeichen. Ascii-Zeichen eben.


ALF - Sa 08.05.10 18:38

Nun muss ich aber noch mal echt blöd fragen. @No0B: Willst Du nun die sogenannten Bilderchen einlesen oder evtl nur den "normalen Text" der evtl noch in der Datei ist. Das sind dann 2 unterschiedliche Dinge! Auch wenn beides aus ASCII-Zeichen besteht! oder generell beides um sie sich einfach nur anzuschauen???
Auch wenn das Bild(Dein Link) aus den erweiterten ASCII also < 128 besteht. Gibts den überhaupt noch :gruebel:

Gruss ALf


No0B - Sa 08.05.10 18:45

Komplett, Text mit "Bild" um sie sich anzusehen. Hab auch mal irgendwo gelesen das es mit Paintbox funktionieren soll.


- Gibts noch in nfo Files, Pablo Draw oder ähnichen

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Schon erledigt.

- Txt erstellen
- Mit Pablo Draw als .ans speichern
- in Ascii Art Studio als .bmp speichern
- Image auf die Form und bmp drauf - fertig

einfacher gehts net. :zustimm:


jaenicke - Sa 08.05.10 19:20

So geht es natürlich auch. Im Memo geht es aber wie gesagt auch problemlos. Einfach laden und den Text mit OemToChar korrekt umwandeln, fertig.


No0B - Sa 08.05.10 19:24

Für mich als "Noob" in Delphi ists natürlich so am einfachsten.

Bis denne...