2012-07-26 69 views
0

這裏是情況:vb6字體字符集oracle

我有string1使用字符集186(BALTIC_CHARSET)。 我有字符串2使用字符集204(RUSSIAN_CHARSET)。 我可以將這些字符串保存到oracle數據庫中。我可以看到這些字符串,因爲他們應該只有當我更改爲特定的字符集時。這沒有問題。問題是我如何將string2保存到.text文件並按照它應該看到它。現在,當我拯救它時,我會變得無稽之談。

我是所有的unicode或ansi或其他新手。 我可以使用vb.net獲得我想要的嗎?那我該怎麼做? 謝謝。

回答

1

文本文件本身沒有代碼頁,因此它將在您查看時顯示爲所選代碼頁(與數據庫中的值相同)。

處理此問題的正確方法是使用VB在內部使用的Unicode,但默認情況下會在顯示或保存到文件時從當前本地代碼頁進行轉換。

您可以save this file as UTF-8或UCS-2通過附加BOM字符開頭和使用像從內存中只是寫出來的字符串數據:

Dim Content() As Byte 
Content = ChrW(&HFEFF) & StringVariable 
FileNum = FreeFile() 
Open FileName For Binary As #FileNum 
Put #filenum, Content 
Close #FileNum 

(未經測試空氣代碼)