• 検索結果がありません。

テキストの保存形式と外国語テキストの保存

N/A
N/A
Protected

Academic year: 2021

シェア "テキストの保存形式と外国語テキストの保存"

Copied!
10
0
0

読み込み中.... (全文を見る)

全文

(1)

情報処理演習 E「PC による外国語処理」第 6 回資料 2003年 11 月 17 日 (月)

6 回: テキストの保存形式と外国語テキストの保存・編集

本日のポイント: • テキストデータの保存形式 ¾ バイナリーファイルとテキストファイル • 文字データの基本概念 ¾ ビットbit ¾ バイトbyte ¾ 文字コード code と文字エンコードコード方式 • Word と EmEditor を使った外国語テキストファイルの編集

1. 文字データの保存形式

文字データには,Word 文書形式やテキスト文書形式(いわゆる「テキストファイル」)など, さまざまなファイルの保存形式が存在する。各形式の特性をよく理解し,どの形式でデー タを保存するかを決定する必要がある。 1.1. バイナリーファイルとテキストファイル … 文字データを保存するファイル形式には,大きく分けて2 種類ある: 1. バイナリーファイル:文字データとその他のデータが混在 2. テキストファイル:文字データのみ … バイナリーファイルには,文字データとそれ以外のデータ(レイアウト情報,書式 情報,文書情報,画像データなど)が一つのファイル中に混在している。テキスト の編集など,ファイル内のテキストを処理するためには,データの内部構造を解 釈できるソフトウエアが必要である。したがって,汎用性は低くなる。 … 具体的には,バイナリーファイルは以下のような種類にわけることができる。 -特定のソフトウエアに特化した形式: Word 文書

-複数のソフトウエアで扱える形式: RTF (Rich Text Format, 「参考」参照) -特定のソフトウエア用の形式だが,一定のツールで閲覧可能: PDF (Portable

Document Format) ← 作成には,別途ツールが必要。今回は解説しない

(2)

… 一方,テキストファイルには,文字データのみが含まれる。したがって,データ の構造は単純で,テキストを扱えるあらゆるソフトウエアで利用することができ, 汎用性は高い (Word でもテキストファイルを扱うことができる)。 ファイルに含まれるテキスト: test 実際のデータ

t e s t

74 65 73 74

これだけ! テキストファイルには,書式やレイアウト,書式・フォント情 報などを保存することは一切できない。テキストファイルで文 字以外に利用できるのは,改行,タブ,スペースのみ。

テキスト: test [スペース] test [改行] test 実際のデータ

t e s t

[スペース]

74 65 73 74 20

t e s t

[改行]

74 65 73 74 0D0A

t e s t

74 65 73 74

したがって,特にレイアウトや書式情報が必要な場合 (レポート,論文など) は, 保存形式としてバイナリーファイルの形式を選ぶ必要がある。

2. デジタル情報としての文字

前ページでみた,「文字 t は 16 進数で 74 というコードをもつ」,ということは,具体的に はどういうことだろうか?ここでは,コンピュータにおけるデータの表記法を詳しくみる ことにする。 2.1. コンピュータと数:デジタルデータの原理 コンピュータは,あらゆるデータを数値として処理する。我々が通常10 進数 decimal scale という単位で数を扱うのに対し,コンピュータでは,数は0 と 1 の 2 進数 binary scale と いう単位で処理される。この2 進数の数値をビット bit と呼ぶ。 10 進数 0 1 2 3 4 5 6 7 8 9 2 進数 0 1 10 11 100 101 110 111 1000 1001 10 進数 10 11 12 13 14 15 16 17 18 19 2 進数 1010 1011 1100 1101 1110 1111 10000 10001 10010 10011 10 進数 20 21 22 23 24 25 26 27 28 29 2 進数 10100 実習1:上記の進数対応表の2 進数の空欄を埋めなさい。 各 文 字 に 対 応 す る 16 進数コード(後述) 次行につづく

(3)

情報処理演習 E「PC による外国語処理」第 6 回資料 2003 年 11 月 17 日 (月) 2 進数は,コンピュータでは処理しやすいが,我々にとっては桁数が増える上,0 と 1 の羅 列で読み間違いやすい。また, 2 進数と 10 進数の切り替えには,いちいち計算が必要なの で,10 進数はコンピュータにとってかなり扱いにくい。そこで,2 進数と相性のよい 16 進 数 hexadecimal でデータを表記するのが一般的である。 16 進数 0 1 2 3 4 5 6 7 10 進数 0 1 2 3 4 5 6 7 2 進数 0 1 10 11 100 101 110 111 16 進数 8 9 A B C D E F 10 進数 8 9 10 11 12 13 14 15 2 進数 1000 1001 1010 1011 1100 1101 1110 1111 16 進数 10 11 12 13 14 15 16 17 10 進数 16 17 18 19 20 21 22 23 2 進数 10000 10001 10010 10011 10100 16 進数 18 19 1A 1B 1C 1D 1E 1F 10 進数 24 25 26 27 28 29 30 31 2 進数 実習2:2 進数が実際に 10 進数・16 進数とどう対応しているか,調べなさい。 16 = 24なので,2 進数 4 桁でちょうど 16 進数の 1 桁分に対応する。この対応関係はどんな に桁数が増えても一定なので,桁が増えても2 進数を 4 桁ごとにわければ簡単に対応する 16 進数をつくることができる。 ヒント:実際に進数計算をする必要がある場合には,Windows XP に標準で付属する「電 卓」を使うと便利である ([スタート]→[プログラム]→[アクセサリ]から起動)。この「電卓」 には,進数の変換ができるオプションがついている。[表示]から[関数電卓]を選ぶと,16 進 数までの進数選択メニューや追加の数値入力ボタンが表示される。 2.2. 文字コード 文字をコンピュータで扱う場合にも,文字は 2 進数のビットの列で処理する必要がある。 そこで,どの文字をどの数値で扱うかをとりきめ,文字をその数値,つまり「コード」(code, 「符号」ともよばれる)で代用する方法がとられる (コードは通常 16 進数で表記する)。 実習3:上記の2 進数と 16 進数の対応関係を参照しながら,以下の 2 進数の値を 16 進数 で表記しなさい。 16 進数 2 進数 111 0100 1110 0100 110 0001 16 進数 2 進数 1010 1001 11 1111 1011 1111 実習4:2 進数と 16 進数の対応関係を参照しながら,以下の文字のコード(16 進数表記)を 2 進数で表しなさい。 文字

t T

16 進数 74 54 2 進数

(4)

2.3. パソコンの文字の基本は ASCII「アスキー」コード コンピュータでは,全てのデータはデジタル情報として扱われる。値 (コード) が数字とし て決まっていない文字はコンピュータでは効率よく扱うことができない。そこで,コンピ ュータが文字を正しく認識するためには「どの文字をどのコードであらわすか」をあらか じめ取り決める必要がある。具体的には, (1) どの文字を扱うか (「文字集合」 character set) を決め, (2) 各文字に識別可能なコード(背番号のようなもの)を割り当てた「文字エンコード方式」 (character encoding scheme, 「文字コード体系」ともいう) を取り決める必要があ る。さらに, (3) 複数のコンピュータが文字データを共有するためには,(1)と(2)を共通にする必要があ る。 … どのコンピュータでも確実に扱える文字:ASCII 1 で定義 → アメリカ英語で用いられる英数字・記号 (94 文字) を網羅 … ASCII では文字が足りない!しかし,ASCII は使いたい。そこで,多くの言語・地 域では — ASCII の一部を置き換える — ASCII に文字を追加する ことで,ASCII を拡張し,言語・地域にあった文字エンコード方式を作っている。 2.4. 文字コードの体系 (「文字エンコード方式」) どの文字が使われるかは言語によって異なるので,文字集合はその言語が話されている国 や地域によって違ってくる。その結果,エンコード方式も,国や地域によって当然異なる。 外国語のテキストファイルを編集するためには,各言語・地域の標準的な文字エンコード 方式を知り,それを使ってテキストを作成する必要がある。 ※ 当然ながら,その言語・地域に,信頼できる文字エンコード方式があり,実際に使わ れていることが大前提である。 以下は,それぞれの言語・地域で標準的に使われる文字エンコード方式のリストである。

言語(地域) 文字エンコード方式の名称 Windows での名称 Windows コ ー ドページ Codepage

日本語 Shift JIS 日本語 (シフト JIS) 932 西ヨーロッパ言語 ISO-8859-1 西ヨーロッパ言語(ISO), 西ヨーロッパ言語(Windows)

1252 中国語 (中国) GB2312 簡体字中国語 (GB2312) 936 中国語 (台湾) BIG5 繁体字中国語 (Big5) 950 韓国語 EUC-KR 韓国語 韓国語(EUC) 949 タイ語 TIS-620 タイ語 (Windows) 874 文字エンコード方式の正式な名称とともに,Windows 上での呼び方を覚えておくとよい (Internet Explorer や Word でのエンコードの選択欄,テキストエディタ EmEditor など

(5)

情報処理演習 E「PC による外国語処理」第 6 回資料 2003 年 11 月 17 日 (月) で使われている)。Windows では,また,文字エンコード方式を「コードページ」Codepage と呼ばれる番号をつけて管理しているが,実際にはWindows のコードページと標準的な文 字エンコード方式で収録されている文字が若干異なる言語・地域があるので注意が必要で ある (詳しくは後日解説する)。 Word およびテキストエディタ EmEditor でテキストファイルを保存・読み込む時の文字 エンコード方式の指定方法は,以下の§3 を参照。(西ヨーロッパ言語を例にする。詳細は, 次回の授業で再度確認する。) 2.5. ビット数と収録文字数 コンピュータで表現できる文字の数は,ビット数,つまりコードを何桁の 2 進数で表すか によって決まる。表現できる文字数が多くなればなるほど,コードも長くなる。言語・地 域によって文字数は異なるので,文字エンコード方式を策定する際には,コードのビット 数を決めるのが大変重要である。(表のように,コードを表記する場合には,桁数を一定に そろえるために0 を補うのが普通である。) 2 進数表記 16 進数表記 文字の最大数 1 ビット (2 進数 1 桁) 0~1 0~1 21 = 2 文字 2 ビット (2 進数 2 桁) 00~11 0~4 22 = 4 文字 3 ビット 000~111 0~8 23 = 8 文字 4 ビット 0000~1111 0~F 24 = 16 文字 5 ビット 00000~11111 0~1F 25 = 32 文字 6 ビット 000000~111111 00~3F 26 = 64 文字 7 ビット 0000000~1111111 00~7F 27 = 128 文字 8 ビット 0000 0000~1111 1111 00~FF 28 = 256 文字 16 ビット 0000 0000 0000 0000 ~1111 1111 1111 1111 0000~FFFF 2 16 = 65,536 文字 … 最も初期のエンコード方式であるASCII は,印刷可能な 94 文字 2 を収録した 7 ビットのエンコード方式である。1963 年という早い時期に策定され,広く普及し たASCII は,多くの言語・地域の標準的なエンコード方式に取り入れられている。 … これに対し,ASCII 以後のエンコード方式の多くは,ASCII よりも多くの文字数 2 印刷可能な文字にくわえ,さらにスペース,タブ,改行などのコードが定義されている。 http://czyborra.com/charsets/iso646.html

0 1 2 3 4 5 6 7 8 9 A B C D E F

0 1 2 3 4 5 6 7 10 の位 1 の位

(6)

を収録するため,ビット数を増やしている。 ¾ 西ヨーロッパ言語,およびタイ語は8 ビットで,ASCII の 2 倍の文字 (28 = 256 文字) が収録できるように拡張されている。 ¾ 中国語 (中国,台湾),韓国語,日本語は,それぞれ 8 ビットと 16 ビットが混 在して使われる。膨大な漢字やひらがな,カタカナ,ハングルを16 ビットで 表すことで,収録文字数を増やしている。 言語(地域) エンコード方式の名称 利用ビット数 収録文字数

ASCII us-ascii 7bit 94

日本語 Shift JIS 8bit, 16bit 6802(うち漢字 6349) 西ヨーロッパ言語 ISO-8859-1 8bit 189 中国語 (中国) GB2312 8bit, 16bit 7445(うち漢字 6763) 中国語 (台湾) BIG5 8bit, 16bit 10353 韓国語 EUC-KR 8bit, 16bit 8224(うちハングル 2350,

漢字4888) タイ語 TIS-620 8bit 181 2 桁の 16 進数で表されるコードは,ビット 8 桁分のデータ(28 = 256 通りの値)をあらわす ことができる。現在のコンピュータでは,8 ビットを最も基本的なデータの単位とし,特に 「バイト」byte と呼んでいる。 ¾ バイトはたとえばファイルのサイズの記述に使われる (B と略される)。 ¾ 日本語Shift JIS のような 8 ビットと 16 ビットの文字が混在するエンコード 方式の場合,8 ビットの文字は便宜的に「半角文字」,16 ビットの文字は「全 角文字」と呼ぶが,バイトを使いそれぞれ「1 バイト文字」,「2 バイト文字」 と呼ばれることもある。 閑話休題:現在ほとんどのコンピュータはこのように8 ビットを 1 バイトとして処理 するが,8 ビットのエンコード方式が広く利用されるようになる以前は,コンピュー タはコードを7 ビットごとに扱っていた (つまり 7 ビットが 1 バイトだった)。 2.6. まとめ: テキストファイル利用上の注意 (1) 文字情報以外は保存されない ¾ レイアウト情報,書式情報は保存されない。 ¾ データの重要な部分を太字(ボールド)などの文字飾りやフォントの種類,大きさで 区別することはできない。 (2) 日本語のテキストファイルと,他の言語のテキストファイルは文字エンコード方式が異 なる。 ¾ どの文字が収録されているか,および ¾ どの文字をどのコードであらわすか,が異なる。 (3) ひとつのテキストファイルには,ひとつの文字エンコード方式しか適用できない。 ¾ たとえば,日本語のテキストと中国語やドイツ語のテキストを混在させることは できない。 ※ ただし,あらゆる文字を収録した文字エンコード方式を使うことで,多言語混 在テキストが作成可能 → Unicode の利用 (後日解説する) ¾ 保存時・読み込み時に間違った文字エンコード方式を選ぶと,正しく入力されて いるはずの文字が化けたり,文字が間違った変換をされてしまうことがある (特に

(7)

情報処理演習 E「PC による外国語処理」第 6 回資料 2003 年 11 月 17 日 (月) 保存時に指定ミスをすると,せっかく作成したテキストが使い物にならなくなる ことがある)。

3. Word および EmEditor での外国語テキストファイルの保存・読み込み

3.1. Word 文書をテキストファイルとして保存 Word 2002 には,[ファイル]→[名前を付けて保存]を選択し,ファイルの種類として「書式 なし(*.txt)」を選ぶことで,ファイルをテキストファイルの形式で保存する機能がある。 「書式なし」を選んで保存した外国語のテキストは,文字エンコード方式を指定して保存 することができる。「エンコード方法」として「Windows (規定値)」 (大学 PC の場合は日 本語Shift JIS),ではなく「その他」を選び,保存したい言語・地域の文字エンコード方式 を選択する。

実習5:file_server の Kadai にある [schiba] フォルダから [2003fl] フォルダを開き,そ

の中の[No6] フォルダを file_server の Home にコピーしなさい。コピーしたフォルダに

あるbarnes_noautocorrect.doc を Word で開き,ファイルの種類を「書式なし」として テキストファイルで保存してみなさい。ファイル名は barnes.txt とし,文字エンコード方 式として,「西ヨーロッパ言語 (ISO)」を指定しなさい。 Word 2002 による書き出しでは,テキストを希望する文字エンコード方式に書き出した場 合におこる変換漏れをWord が検証し,指摘してくれる利点がある (例えば,テキストに日 本語の全角文字が入ったテキストを欧文として書き出そうとすると注意がでる。このよう な場合,必要ならばもとのテキストに戻り,修正を加えることで,テキストを不足なく安 全に書き出すことができる)。変換できない文字が含まれている場合,テキスト文書ではそ

(8)

の文字が「?」や他の文字に置き換えられる 3 ことがあるので注意が必要である。 3.2. エンコードされたテキストファイルを Word に読み込む Word2002 には,エンコードつきテキストファイルの読み込み機能もある。これを使って, 殆どの言語のテキストファイルをWord に読み込み処理することができる。 1. [ファイル]→[開く]を選択する 2. 読み込むファイルを選択する。[ファイルの 種類]を「テキストファイル(*.txt)」ないし 「全てのファイル(*.*)」に指定し,テキス トファイルを選択する。 3. 「ファイルの変換」ダイアログでエンコー ド方法を選択する。「エンコード方法」を適 切に指定し,正しい文字エンコード方式を 選ぶ (変換内容はプレビューで確かめるこ とができる)。 4. 正しく表示できたことを確認したら,「OK」 ボタンをクリックして文書を開く。 実習6: 実習5で作成した barnes.txt をテキストファイルとして Word に読み込みなさ い。文字エンコード方式を「西ヨーロッパ言語 (ISO)」に指定し,文字がきちんと表示さ れることを確認して開くこと。 3.3. EmEditor でテキストファイルを保存・編集 EmEditor 4 は,今年度の学生用 PC から導入された多言語の編集に適したテキストエディ タである。起動は [スタート] ボタンから「プログラム」→「EmEditor v3」を選択する。 EmEditor でテキストを保存する場合,「名 前をつけて保存」画面の「コードページ」 で正しい文字エンコード方式を指定する。 3 変換メニューの「文字の置換を認める」オプションをチェックすると,Word は自動的に変換 できない文字を可能な限り「それらしい」文字に置換して変換をおこなう。 4 Emurasoft が開発・販売するテキストエディタで,Windows に付属する「メモ帳」よりも高 機能である (例えば,HTML ファイルの中のタグを色分けしてくれるほか,さまざまな言語の 編集にも対応している)。下記 URL よりソフトをダウンロードしてインストールできる: URL: http://www.emeditor.com/jp/ 気に入った人は自宅PC にインストールして利用してみるとよい(大学の PC にはインストール 済み)。ソフトは 30 日の試用期間が設けられており,継続して利用したい場合にはユーザ登録し てライセンスを購入する必要がある (シェアウエアと呼ばれる方式)。学生の場合には,在学中

(9)

情報処理演習 E「PC による外国語処理」第 6 回資料 2003 年 11 月 17 日 (月) 文字エンコード方式を指定してテキストファイルを読み込む場合には,「ファイル」→「開 く」で「コードページ」から指定する文字エンコード方式を選ぶか,ファイルを開いた後, 「ファイル」→「コードページを変更して読み直し」を選択し,文字エンコード方式を変 更する (WWW ブラウザで「エンコード」を変更するのと同様,正しい文字エンコード方 式で保存された文書であれば,エンコードを変更して読み直すことで正しく表示すること ができる。ただし,間違った文字エンコード方式のままで文書を編集し,「上書き保存」す ると元の文書とは異なる文字エンコード方式で保存されてしまうので注意!)。 ※ Word を使ってテキストファイルを保存する場合のヒント 正しい文字エンコード方式を指定したにも関わらず,「正しく保存されない」というメッセージ が出る場合がある。赤で示された箇所が記号の場合,Word のオートコレクト機能によりその記 号の文字種が微妙に変更されたために起こっていることが多い。この場合,「文字の置換を認め る」というオプションをチェックすると,これらの記号を保存したい文字エンコード方式にある 文字種の記号に自動的に変更した上でテキストファイルを保存することができる (この処理を しないと,該当する記号が「?」に置き換えら れて保存されるので注意!)。 次回授業について: 次回は「中国語処理概説」と題し,1, 2 クラス合同で授業を行う。1,2 クラスとも 1301 教室に集まること。 次々回までの課題: ウェブページとして公開することを目的に,次々回の授業までに以下の 2 種類のテキス トを作成しなさい: (1) 自分の選択する外国語で簡単な自己紹介のテキストを作文し,intro.txt というファイ ル名をつけて,適切な文字エンコード方式を指定したテキストファイル形式で保存し なさい。 (2) 上記の自己紹介のテキスト (1) の訳を日本語で作文し,intro-j.txt というファイル名 をつけて,日本語 Shift JIS で保存しなさい (Word であれば「Windows (規定値)」, EmEditor であれば「標準 ANSI (932)」でOK。もちろん,文字エンコード方式とし て「日本語 (シフト JIS)」を正確に指定してもよい)。訳は必ずしも (1) のテキスト に忠実でなくともよい。 テキストはWord ないし EmEditor で編集し,適切な文字エンコード方式を指定してテキ ストファイルとして保存しておくこと。(テキストファイルとして保存するので,レイア ウトや書式の修正は不要。) 次回以降の授業で,この文書をテキストファイルとして保存 し,さらにHTML 文書に加工する予定である。

(10)

参考:保存形式の選択:Word 文書と「リッチ テキスト形式」文書

Word という特定のソフトウエアに特化したファイル形式である Word 文書形式は,複数の ソフトウエアで利用したり,他人に配布したりする際に注意を要する。相手が Word2000 を使っているならば,Word 文書をそのまま渡せるが,以下のような場合には,Word 文書 を別のファイル形式で保存しなおす 5 必要がある: … Word を使っていない相手に文書ファイルを渡す場合。 … 異なるバージョン,または異なるOS,さらには異なる言語バージョンの Word を 使っている相手に文書を渡す場合。同じWord 文書なのに正しく読み込めないとい う互換性の問題を回避することがある。 Word 文書をやりとりする場合のヒント 9 相手が使っている文書編集ソフトの種類,バージョン,OS を確認する。 9 Word 文書を相手に配布する際に,自分の使っている Word のバージョン (日本語版 Word2002 SP-2 など) をはっきり示す ([ヘルプ]→[バージョン情報]で確認しよう)。 9 ソフトウエアに違いがある場合には,ファイルとともに印刷した文書を渡し,相手 に文書が正しく読めているかチェックしてもらう。 レイアウト付き文書の形式のうち,Word 文書よりも汎用性の高い形式として,「リッチ テ キスト形式」(Rich Text Format, 拡張子は .rtf, 以下 RTF) がある。RTF は Microsoft の 提供している汎用性の高い文書形式で,Word で簡単に作成することができるほか,Word 以外の多くのワープロソフトでも編集することができる。 1. [ファイル]→[名前を付けて保存]を選択 2. 「ファイルの種類」を「リッチ テキスト 形式」にする。 3. 「保存」ボタンを押す。 注意1:Word から RTF を作成した場合,同じような内容のファイルが Word 形式と RTF の2つできる。この状態で,RTF 文書上で編集を行ってしまうと,どちらがオリジナルか わからなくなってしまうので,混乱を避けるためにも,RTF への変換は,元の Word 文書 でのテキスト編集が完了してからおこなうとよい。 注意2:RTF は,Word 文書よりもファイルサイズが大きくなるので注意。特に,Word 文 書が大きいと,雪だるま式にファイルサイズが増す (300KB 程度の Word 文書を RTF にす ると,4MB 近くになる!)。 注意3:RTF にもバージョンがある。新しいバージョンの RTF で作成された文書を古い RTF をサポートするソフトウエアで読むと,意図したとおりに表示されない場合がある。 注意4:Word2000 以降,Word は全ての言語のバージョンで同じの基本プログラムを使っ ている。従って,他の言語バージョン間でWord 文書をやりとりしもうまくいく可能性が高 くなっている。 備考:Word では,RTF のほかに,他のワープロソフトの文書形式を選んでファイルを保 存することができる。また,Word の古いバージョンの形式,また他の言語バージョンの Word の文書形式を選ぶこともできる。

参照

関連したドキュメント

「臨床推論」 という日本語の定義として確立し

噸狂歌の本質に基く視点としては小それが短歌形式をとる韻文であることが第一であるP三十一文字(原則として音節と対応する)を基本としへ内部が五七・五七七という文字(音節)数を持つ定形詩である。そ

ダウンロードファイルは Excel 形式、CSV

Lane and Bands Table と同様に、Volume Table と Lane Statistics Table も Excel 形式や CSV

答 200dpi 以上の解像度及び赤・緑・青それぞれ 256 階調 (注) 以上で JIS X6933 又は ISO

第 98 条の6及び第 98 条の7、第 114 条の 65 から第 114 条の 67 まで又は第 137 条の 63

Medial