HOWTO:在 Visual Basic 表單上讀取與顯示 UNICODE 字串

文章翻譯 文章翻譯
文章編號: 193540 - 檢視此文章適用的產品。
本文曾發行於 CHT193540
全部展開 | 全部摺疊

在此頁中

結論

本文示範如何從 Unicode 文字檔讀取 Unicode 字串,然後在 Visual Basic 表單上顯示此字串。

其他相關資訊

Visual Basic 內部基礎是架構在雙位元組的 Unicode 標準上。然而,Visual Basic 外的大部分情況仍然是使用單位元組的 ANSI 模組。因此,Visual Basic 提供兩組表單控制項,並使用 ANSI 這一組作為預設的控制項。任何傳送至 ANSI 這一組表單控制項的字串都會從內部的 Unicode 表示法轉換成 ANSI 表示法,並且無法正確顯示 UNICODE 字串。若要能在 Visual Basic 表單上顯示 UNICODE 字串,您必須使用 UNICODE (Forms 2.0) 控制項。下面範例示範如何使用 Forms 2.0 控制項,以顯示讀取自 Unicode 文字檔的 UNICODE 字串。因為這個行為需要有 UNICODE 語言套件支援,而目前只有 Windows NT 才支援此套件。

注意:本文所使用的 Forms 2.0 控制項不是專為在 Visual Basic 表單上使用而設計,並且尚未正式在此環境中測試過。本文只在此相當受限的背景中說明其用法,以便解決 Visual Basic 內建控制項的限制問題。我們不支援在 Visual Basic 表單上使用這些控制項的其他功能。

此外,Forms 2.0 是 Microsoft Office 的一部分,並且無法轉散發。因此,您無法以應用程式來散發 Forms 2.0 (fm20.dll),目標電腦上必須已經有 Forms 2.0。

如需散發 fm20.dll 的其他資訊,請參閱 Microsoft Knowledge Base 中的下面文件:
224305 INFO:Usage and Redistribution of FM20.DLL [OffDev]

建立範例的詳細步驟指南



  1. 在 Windows NT 電腦上安裝中文語言套件。若需安裝指示,請參閱下文的〈參考〉一節。在此步驟中,系統會自動安裝「細明體」字型。如果您想使用其他 UNICODE 語言支援,您也可以安裝其他語言套件。
  2. 建立一個標準執行檔專案。根據預設值,隨即建立 Form1。
  3. [專案] 功能表選取 [元件],然後核取 [Microsoft Forms 2.0 Object Library]。此時會有幾個新的控制項新增至工具箱中,包括 UNICODE 版的文字方塊、標籤等等。
  4. 將 Forms 2.0 的 TextBox 新增至 Form1,並保持其預設的名稱:TextBox1。將此文字方塊的字型設為 MingLiu。
  5. 新增兩個 [指令按鈕] 至 Form1。
  6. 將下面程式碼新增至 Form1 的程式碼視窗中:
    Private Sub Command1_Click()
    ' create a Unicode text file with Chinese character
    ' 
    Dan1 and English character D.
    Dim a(0 To 5) As Byte
    a(0) = &HFF
    a(1) = &HFE
    a(2) 
    = &H39
    a(3) = &H4E
    a(4) = &H44
    a(5) = &H0
    Open "unicode.txt" For Binary As #1
    Put 
    #1, , a
    Close #1
    End Sub
    Private Sub Command2_Click()
    Dim txtline As String
    ' you 
    may need to change the path of the file
    Open "unicode.txt" For Binary As #1
    txtline 
    = InputB(2, #1)  ' always FF FE, skip them
    txtline = InputB(4, #1)
    Close #1
    TextBox1.Text 
    = txtline  ' display the string
    End Sub
    
    
    請注意,UNICODE 文字檔總是以位元組 FF FE 為開頭,這就是您需要略過這兩個位元組的原因。同時請注意,若要從檔案讀取 UNICODE 字串,檔案必須開啟為二進位檔,並使用 InputB 來讀取。
  7. 執行此應用程式。按一下 [Command1] 以建立 Unicode 文字檔。
  8. 按一下 [Command2]。中文字元 Dan1 與英文字元 D 會正確顯示在文字方塊中。您也可以使用「記事本」以 MingLiu (細明體) 字型來檢查此 unicode.txt 檔。

?考

如需其他資訊,請參閱 Microsoft Knowledge Base 中的下列文件:
177561HOWTO: Add and Enable Additional Languages in Windows NT
224305 INFO:Usage and Redistribution of FM20.DLL [OffDev]

本文件是根據 Microsoft Knowledgebase 文件編號 Q193540 翻譯的. 若要參考原始英文文件內容, 請至以下網址:

http://support.microsoft.com/support/kb/articles/Q193/5/40.asp

屬性

文章編號: 193540 - 上次校閱: 2003年8月19日 - 版次: 1.0
這篇文章中的資訊適用於:
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic 6.0 Enterprise Edition
關鍵字:?
kbhowto kbvbp kbunicode kbvbp500 kbvbp600 kbctrl kbgrpdso KB193540
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com