如何读取和显示在 Visual Basic 窗体上的 UNICODE 字符串

文章翻译 文章翻译
文章编号: 193540 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

概要

本文演示了如何从一个 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)。它必须已经是目标计算机上。

有关分发 fm20.dll 的其他信息,请参阅下面 Microsoft 知识库中相应的文章:
224305信息: 使用状况和重新分发的 FM20.DLL [OffDev]

生成示例的逐步式指南

  1. 在 Windows NT 计算机上安装简体中文语言包。请参阅有关安装说明下面参考部分。在 MingLiu 字体将自动安装在此步骤。您还可以安装其他语言包,如果您想要使用其他 UNICODE 语言支持。
  2. 创建一个标准 EXE 项目。默认情况下创建 Form1。
  3. 项目 菜单中选择 组件,并检查 Microsoft Forms 2.0 对象库。几个新控件添加到包括文本框、 标签,等的 UNICODE 版本这一工具箱中。
  4. 向 Form1 中添加窗体 2.0 文本框,并保留其默认名称: TextBox1。 设置为 MingLiu 文本框的字体。
  5. 向 Form1 中添加两个 CommandButtons
  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 知识库中相应的文章:
177561如何添加和 $ 启用在 Windows NT 中的其他语言
224305信息: 使用状况和重新分发的 FM20.DLL [OffDev]

属性

文章编号: 193540 - 最后修改: 2005年3月7日 - 修订: 1.4
这篇文章中的信息适用于:
  • Microsoft Visual Basic 5.0 专业版
  • Microsoft Visual Basic 6.0 专业版
  • Microsoft Visual Basic 5.0 企业版
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
关键字:?
kbmt kbctrl kbhowto kbunicode KB193540 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 193540
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