I\'m trying to write some Chinese characters to a text file using
Set myFSO = CreateObject(\"Scripting.FileSystemObject\")
Set outputFile = myFSO.OpenTextFile(ge
Things had changed along win versions. This works on Win10:
Set outputfile = myFSO.CreateTextFile(filename,True,True)
The 3rd arg is bool true/false for unicode/ascii 2. Surprisingly, when using myFSO.OpenTextFile the arg is int with 1 (not -1) for unicode 1.
Documentation:
https://msdn.microsoft.com/en-us/library/aa265018(v=vs.60).aspx
https://msdn.microsoft.com/en-us/library/aa265347(v=vs.60).aspx
Try this:-
MsgBox "Writing Line"
On Error Resume Next
outputFile.WriteLine s '' # Removed ( ) that shouldn't be there.
MsgBox "Err " & Err.Number & ": " & Err.Description
On Error GoTo 0
What do you get?
Maybe it's got something to do with character encoding. Try directly specifying the Unicode format for the file in the last parameter of the OpenTextFile
method:
Const Unicode = -1
Set outputFile = myFSO.OpenTextFile(getOutputName(Argument, getMsiFileName(Wscript.Arguments)), forWriting, True, Unicode)
Also, you need to close the file after writing to it:
outputFile.Close
If this doesn't help, try error handling like AnthonyWJones suggested.