- 名字
- encoding - 操纵编码
- 总览
- encoding option ?arg arg ...?
- 介绍
- 描述
- encoding convertfrom ?encoding? data
- encoding convertto ?encoding? string
- encoding names
- encoding system ?encoding?
- 例子
- 参见
- 关键字
encoding - 操纵编码
encoding option ?arg arg ...?
在 Tcl 中字符串使用16位的 Unicode
字符来编码。不同的操作系统接口或应用可以生成用其他编码如
Shift-JIS 的字符串。encoding 命令是 Unicode
和其他格式之间的桥梁。
依照
option,完成与编码相关一系列操作之一。合法的 options
有:
- encoding convertfrom ?encoding? data
-
把 data 从特定的 encoding(编码)转换成 Unicode。在 data
中的字符被作为二进制数据对待,其中的每个字符的低8位被作为一个单一的字节接受。结果的字节序列被作为一个用特定的
encoding 编码的字符串。如果未指定 encoding,使用当前的系统编码。
- encoding convertto ?encoding? string
-
把 string 从 Unicode 转换成特定的 encoding
编码。结果是表示转换后的字符串的一个字节序列。
每个字节都存储在一个 Unicode 字符的低8位中。如果未指定 encoding,使用当前的系统编码。
- encoding names
-
返回包含当前可获得的所有编码的名字的一个列表。
- encoding system ?encoding?
-
设置系统编码为 encoding。如果省略了 encoding,则命令返回当前系统编码。在
Tcl 向系统调用传递字符串时使用系统编码。
一个常见的实践是用产生 euc-jp
编码输出的文本编辑器来写脚本文件,它把 ASCII
字符表示成一个单一的字节而把日文字符表示成两字节。这样通过简单的键入对应于非
ASCII 字符的文字串便可在脚本中某个位置上嵌入它。但是,
由于 source 命令总是使用
ISO8859-1 编码来读文件,Tcl
将把文件中的每个字节作为一个单独的字符对待并映射成在
Unicode 中的 00 (代码)页(中的字符)。结果的 Tcl
字符串不包含想要的日文字符。转而,它将包含相应与原始的字符串的每个字节的一个
Latin-1 字符的序列。encoding
命令将可被用于把这个字符串转换成想要的日文 Unicode 字符。例如,
set s [encoding convertfrom euc-jp "\xA4\xCF"]
将返回 Unicode 字符串 "\u306F",它是 Hiragana 字母 HA。
Tcl_GetEncoding
编码
Copyright © 1998 by Scriptics Corporation.
Copyright © 1995-1997 Roger E. Critchlow Jr.
[中文版维护人]
寒蝉退士
[中文版最新更新]
2001/07/08
《中国 Linux 论坛 man 手册页翻译计划》:
www.CMPP.net