Seite 1 von 1

Probleme beim Speichern von Text aus EditorGadget

Verfasst: 13.01.2006 17:22
von John Doe
Hallo allesamt
wenn ich Text aus einer Datei in ein EditorGadget lade benutze ich

Code: Alles auswählen

Procedure Load(File.s, Editor.l) 
  Protected *hFile.LONG 
  Protected Stream.EDITSTREAM 
  *hFile = ReadFile(#PB_Any, File) 
  If *hFile 
     Stream\dwCookie    = *hFile\l 
     Stream\pfnCallback = @StreamIN() 
     SendMessage_(GadgetID(Editor), #EM_STREAMIN , #SF_TEXT, @Stream) 
     SendMessage_(GadgetID(Editor), #EM_LIMITTEXT,-1,0) 
     CloseFile(*hFile) 
  EndIf 
nach Änderungen am Text speichere ich selbigen mit:

Code: Alles auswählen

Procedure Save(File.s, Editor.l) 
    Protected *hFile.LONG 
    Protected Stream.EDITSTREAM 
    *hFile = OpenFile(#PB_Any, File) 
      If *hFile 
        Stream\dwCookie    = *hFile\l 
        Stream\pfnCallback = @StreamOUT() 
        SendMessage_(GadgetID(Editor), #EM_STREAMOUT, #SF_TEXT, @Stream) 
        CloseFile(*hFile) 
      EndIf 
  EndProcedure 
[

wenn ich nun am Ende des Textes einiges lösche und danach abspeichere, erscheint der gelöschte Text beim erneuten Öffnen der Datei jedoch wieder.
Woran kann das liegen ??

Verfasst: 13.01.2006 19:46
von edel
Ganz einfach, wenn du eine Datei aenderst und den Inhalt in die gleiche Datei
wieder abspeicherst wird auch nur der Teil ueberschrieben der im Editor da
ist, die Datei behaelt (in deinem Fall) die Groesse bei und verkleinert sich
nicht . Benutze einfach statt Openfile CreateFile beim speichern.

Verfasst: 13.01.2006 19:51
von John Doe
erscheint logisch, warum bin ich nicht selbst darauf gekommen ...
vielen Dank für die Hilfe