encoding(3tcl)

NAME
encoding - 操縱編碼

總覽 SYNOPSIS
encoding option ?arg arg ...?

介紹 INTRODUCTION

在 Tcl 中字串使用16位的 Unicode 字元來編碼。不同的作業系統介面或應用可以生成用其他編碼如 Shift-JIS 的字串。encoding 命令是 Unicode 和其他格式之間的橋樑。

描述 DESCRIPTION

依照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 向系統呼叫傳遞字串時使用系統編碼。

範例 EXAMPLE

一個常見的實踐是用產生 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。

參見 SEE ALSO
Tcl_GetEncoding(3)

關鍵字 KEYWORDS
encoding

[中文版維護人]
寒蟬退士

[中文版最新更新]
2001/07/08

《中國 Linux 論壇 man 手冊頁翻譯計劃》:
http://cmpp.linuxforum.net

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh