Seite 1 von 1
AllocateMemory() schneller als ReadFile()?
Verfasst: 19.11.2006 15:44
von RSBasic
Hi, ich habe eine Frage. Es gibt zwei Möglichkeiten (oder auch mehr, aber nur diese zwei sind wichtig), wie man den Inhalt einer Datei in ein EditorGadget einfügt. Meine Frage ist, welcher Befehl schneller ist?
Verfasst: 19.11.2006 15:59
von HeX0R
Was hat denn AllocateMemory() mit einem EditorGadget zutun ?
Verfasst: 19.11.2006 16:05
von ts-soft
Wenn es ums laden von Text in ein EditorGadget unter Window geht:
Code: Alles auswählen
Procedure StreamFileIn_Callback(hFile, pbBuff, cb, pcb)
ProcedureReturn ReadFile_(hFile, pbBuff, cb, pcb, 0) ! 1
EndProcedure
Procedure Editor_Load(Gadget, File.s)
Protected StreamData.EDITSTREAM
Protected FF_File = ReadFile(#PB_Any, File)
If FF_File
StreamData\dwCookie = FileID(FF_File)
StreamData\dwError = #Null
StreamData\pfnCallback = @StreamFileIn_Callback()
If UCase(GetExtensionPart(File)) = "RTF"
SendMessage_(GadgetID(Gadget), #EM_STREAMIN, #SF_RTF, @StreamData)
Else
SendMessage_(GadgetID(Gadget), #EM_STREAMIN, #SF_TEXT, @StreamData)
EndIf
CloseFile(FF_File)
EndIf
EndProcedure
Ansonsten, es ist schneller den gesamten Text mit ReadData auf einmal zu
lesen, als mit ReadString, vorausgesetzt es sind mehr als 3 Zeilen
//typo korrigiert
Verfasst: 19.11.2006 17:19
von remi_meier
Ansonsten, es ist schneller den gesamten Text mit ReadDate auf einmal zu
lesen, als mit ReadString, vorausgesetzt es sind mehr als 3 Zeilen
Oder einfach
FileBuffersSize(#file, Lof(#file))
Verfasst: 30.11.2006 09:58
von dige
Huch! Seit wann gibt es denn diese Buffer-Zugriffe?? Verdammt, ich werde
mir mal die Hilfe komplett durchlesen müssen ...
