File Streams - Appending to File
Blitz3D Forums/Blitz3D Programming/File Streams - Appending to File
| ||
| I have a simple Logging function for a project, but I can't seem to get it to work correctly. Currently, the code just seems to overwrite a single line each time. I am not sure if it's related to the closing and re-opening. (Incidentally, what diffeerence(s) are there between OpenFile and WriteFile? ) However, I don't like to leave any files Open, especially as my program may involve other read/writes to other files elsewhere.
Function Debug(sDebugFunction$="APPLICATION RUN",sDebugResult$="LOG START")
If (DebugOn())
DebugFile=WriteFile(fLOGFILE$)
SeekFile(DebugFile,FileSize(fLOGFILE$))
sLine$=CurrentDate$()+" | "+CurrentTime$()+" | "+sDebugFunction$+" | "+sDebugResult$
WriteLine(DebugFile,sLine$)
CloseFile DebugFile
EndIf
Return
End Function
Any help would be really appreciated. |
| ||
| Maybe try doing ReadLine to see if there is anything on that line first and loop it till it gets to an empty spot? |
| ||
| Use OpenFile(), As far as im aware WriteFile() zeros the file ready for writing. You might want to use WriteFile() first to create a file. OpenFile() requires that the file exists. |
| ||
| May offer some help: http://www.blitzbasic.com/Community/posts.php?topic=27896 |
| ||
| Yes, you need to check to see if the log file exists, if it does use OpenFile, else use WriteFile. |
| ||
| Oh the file definitely exists. OpenFile worked fine. Thanks for the info. I shoulda tried that before posting, really ;) |
| ||
file = OpenFile(path$) SeekFile file, FileSize(path$)The file is now opened for reading and writing and the file position is at the end of the file. |