G
Greg Lovern
I inherited some Excel code that does this:
Set fso = CreateObject("Scripting.FileSystemObject")
strTempFile = fso.GetSpecialFolder(2) & "\" & fso.GetTempName & ".txt"
'2 = TemporaryFolder.
ActiveWorkbook.SaveAs(Filename:=strTempFile, FileFormat:=xlText)
nSourceFile = FreeFile
Open strTempFile For Input As #nSourceFile
sText = Input$(LOF(1), 1)
Close
Then, sText is uploaded to a server.
That works fine for English, German, and French. But then we added
Japanese. Excel's xlText (tab delimited) file format changes all
Japanese characters into question marks. So, I changed that line to
save as Unicode tab delimited instead:
ActiveWorkbook.SaveAs(Filename:=strTempFile,
FileFormat:=xlUnicodeText)
The file looks great in Notepad; Japanese characters are preserved.
But, then I get Error 62 on this line:
sText = Input$(LOF(1), 1)
So, I changed that section to this:
Open strTempFile For Binary As #nSourceFile
sText = InputB$(LOF(1), 1)
With that, I don't get errors in VBA, but the backend server chokes on
extra characters that I guess must be invisible in Notepad.
So I tried this:
Set oTextStream = fspenTextFile(strTempFile )
sText = oTextStream.ReadAll
The result is garbled; where the Japanese characters should be,
instead there are random characters like this:
K0Q0f0$B!&(Bc0_0$B!&%?(BL0$B!&%f(B0$B!&!V(B0$B%-(B0$B!&%#(B0$B%F(B0$B%M(B0g0
Any suggestions on how I can preserve the Japanese characters without
getting extra characters that are invisible in Notepad?
Thanks,
Greg
Set fso = CreateObject("Scripting.FileSystemObject")
strTempFile = fso.GetSpecialFolder(2) & "\" & fso.GetTempName & ".txt"
'2 = TemporaryFolder.
ActiveWorkbook.SaveAs(Filename:=strTempFile, FileFormat:=xlText)
nSourceFile = FreeFile
Open strTempFile For Input As #nSourceFile
sText = Input$(LOF(1), 1)
Close
Then, sText is uploaded to a server.
That works fine for English, German, and French. But then we added
Japanese. Excel's xlText (tab delimited) file format changes all
Japanese characters into question marks. So, I changed that line to
save as Unicode tab delimited instead:
ActiveWorkbook.SaveAs(Filename:=strTempFile,
FileFormat:=xlUnicodeText)
The file looks great in Notepad; Japanese characters are preserved.
But, then I get Error 62 on this line:
sText = Input$(LOF(1), 1)
So, I changed that section to this:
Open strTempFile For Binary As #nSourceFile
sText = InputB$(LOF(1), 1)
With that, I don't get errors in VBA, but the backend server chokes on
extra characters that I guess must be invisible in Notepad.
So I tried this:
Set oTextStream = fspenTextFile(strTempFile )
sText = oTextStream.ReadAll
The result is garbled; where the Japanese characters should be,
instead there are random characters like this:
K0Q0f0$B!&(Bc0_0$B!&%?(BL0$B!&%f(B0$B!&!V(B0$B%-(B0$B!&%#(B0$B%F(B0$B%M(B0g0
Any suggestions on how I can preserve the Japanese characters without
getting extra characters that are invisible in Notepad?
Thanks,
Greg