Ok, it looks like you are using the newObjects SFMain to do this. I'm
not a fan of using magic numbers, even if they do save space in NSB/CE
programs. I always have to look them up, so I prefer to declare
constants using the names in the library's typelib where possible.
You seem to be opening the same file twice for some reason. Once as
outFile and again as file2. That might be why you're seeing the results
you experience.
Here's an example that works for me:
Option Explicit
'newObjects SFMain flags/values ----------------------
'Open/create mode flags.
Const cSFRead = &H0
Const cSFWrite = &H1
Const cSFReadWrite = &H2
'Sharing.
Const cSFShareExclusive = &H10
Const cSFShareDenyWrite = &H20
Const cSFShareDenyRead = &H30
Const cSFShareDenyNone = &H40
'Creation specific (these apply to CreateXXX methods).
Const cSFFailIfThere = &H0
Const cSFCreate = &H1000 'Create/overwrite.
'WriteText options.
Const cOptChars = 0
Const cOptLine = 1
'Seek origins.
Const cStreamBegin = 0
Const cStreamCurrent = 1
Const cStreamEnd = 2
Dim SFM, stmTextFile
Const FILENAME = "\Documents and Settings\TestText.txt"
Set SFM = CreateObject("newObjects.utilctls.SFMain") 'Or use AddObject.
Set stmTextFile = _
SFM.CreateFile(FILENAME, cSFWrite Or cSFShareExclusive Or cSFCreate)
With stmTextFile
.WriteText "Line 1", cOptLine
.WriteText "Line 2", cOptLine
.WriteText "Line 3", cOptLine
.Close
End With
MsgBox "New file 3 lines", vbOKOnly, "TextFileProg"
Set stmTextFile = SFM.OpenFile(FILENAME, cSFReadWrite Or
cSFShareExclusive)
With stmTextFile
.Seek 0, cStreamEnd
.WriteText "Line 4", cOptLine
.WriteText "Line 5", cOptLine
.WriteText "Line 6", cOptLine
.Close
End With
MsgBox "Added 3 more lines", vbOKOnly, "TextFileProg"
Set stmTextFile = _
SFM.CreateFile(FILENAME, cSFWrite Or cSFShareExclusive Or cSFCreate)
With stmTextFile
.WriteText "New Line A", cOptLine
.WriteText "New Line B", cOptLine
.Close
End With
MsgBox "New new file 2 lines" & vbNewLine & "Done!", vbOKOnly,
"TextFileProg"
Bye
--- In [email protected], "georgeewalters" <gwalt...@...>
wrote:
>
> Here is the code:
>
> outName = "\Documents and Settings\AcuTrack\StockCount.txt"
>
> Set outFile = fs.CreateFile(outName, 4096)'--Create and open and
> Set file2 = fs.OpenFile(outName)
> For i = 1 To count
> tmp = list(i,0) & list(i,1) & list(i,2) & list(i,3)
> MsgBox tmp
> file2.WriteText tmp
> Next
>
> file2.Close
>
> MsgBox("File saved")
>
> My understanding is the CreateFile with 4096 will delete the file if
it exists and create a new empty file. I then write one record to the
file and when I look at the file with fileExplorer (on PDA i'm talking)
it has the record I wrote but at end of all the other records. So the
createfile did not delete the file. Can someone explain? I must be
understanding something wrong or a mistake in the code above.
>
> Flags are:
>
> 0 - Fail if file already exists (default)
> 4096 - If file exists, delete and recreate
>
--
You received this message because you are subscribed to the Google Groups
"nsb-ce" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/nsb-ce?hl=en.