Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung] (https://www.delphipraxis.net/123071-einlesen-aus-memo-editfelder-%5Bbibliotheksverwaltung%5D.html)

Teekeks 27. Okt 2008 18:46

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
UNIX ist doch richtig da ich mein Lazarus auf Linux habe...

DeddyH 27. Okt 2008 19:02

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
Ich habe es gerade unter Debian mit Lazarus 0.9.24 versucht und es funktioniert. Nun bin ich ratlos.

Teekeks 27. Okt 2008 19:10

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
da sind wir schon 2...
Könte es evtl. daran ligen das ich
1. E_Titel erzeugt habe dann
2. das Kopiert und Eingefügt habe und dann den Namen geändert habe?

DeddyH 27. Okt 2008 19:13

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
Welchen Namen? Den der Komponente? Wenn die beiden übereinstimmen, sollte es keine Probleme geben, ansonsten würde der Compiler einen unbekannten Bezeichner anmeckern (zumindest bei Delphi).

Teekeks 27. Okt 2008 20:13

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
Ach ist jetzt auch egal. Ich habe nämlich den Fehler gefunden! (um genau zusein mein Vater :wink: )
jetzt sieht der Code so aus:
Delphi-Quellcode:
   data:=M_import.Text;
  AssignFile(F1,'/home/peter/Lazarusprojekte/Bibliothek/Data/import.txt');
  {$i-}
  Rewrite(F1);
  {$I+}
  if (IOResult<>0) then ShowMessage('Dateizugriffsfehler!')
  else begin
    WriteLn(F1,data);
    CloseFile(F1);
  end;
  M_Import.Clear;
  Reset(F1);
  while not eof(F1) do begin
    Readln(F1, s1);
    if (Pos('ISBN',s1)>0) then
      E_ISBN.Text := StringReplace(s1,'ISBN: ', EmptyStr,[rfReplaceAll]) ;
    if (Pos('Titel',s1)>0) then
      E_Titel.Text := StringReplace(s1,'Titel: ', EmptyStr,[rfReplaceAll]) ;
    if (Pos('Verfasser',s1)>0) then
      E_Verfasser.Text := StringReplace(s1,'Verfasser: ', EmptyStr,[rfReplaceAll]) ;
  end;
  if (IOResult<>0) then ShowMessage ('Dateizugriffsfehler!');
  CloseFile(F1);
weil: Das Memo hat nämlich ein Problem mit umlauten wie 'Ä'(wie beim Titel) und alles danachfolgende wurde wie folgend automatisch geändert:
aus
Zitat:

'Verfasser: Franzbonenkamp, Marco
Ausgabe: 1. Aufl.'
wurde
Zitat:

'rfasser: Franzbonenkamp, Marco'+#10+'A'
'sgabe: 1. Aufl.'+#10+'V'
Deswegen konnte er ISBN und so nicht finden^^
Aus diesem grund speichere ich das ganze einfach in ner *.txt und lese das ganze danach zeile für Zeile wieder ein.
Ich finde das das dann auch leichter verständlich ist.

Also: DANKE für eure Hilfe (speziell dir DeddyH :wink: )
Mein problem ist gelößt!!

gruß Teekeks

christian_u 28. Okt 2008 12:47

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
Das memo hat kein problem mit umlauten, dein Linux benutzt UTF-8 du musst also wenn du copy, pos verwenden willst das ganze vorher nach ansi konvertieren. Oder du nimmst UTF8Copy, UTF8Pos damit ist das ganze dann auch wirklich Unicodetauglich

Teekeks 28. Okt 2008 14:39

Re: Einlesen aus Memo in Editfelder. [Bibliotheksverwaltung]
 
Hi cristian_u!
Natürlich könnte ich das machen aber ich finde das so eigendlich ganz gut da das Programm ja später unter einem neueren Windows laufen soll.

Das kann gut sein das das an meinem Linux liegen da es eine Suse 9.1 ist und damit etwas älterem Baujahres ist ^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:47 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz