(57)【要約】【課題】  オペレーションステムやコンピュータ識別コード等を指定しなくても適切な文字コード変換を実行することのできる文字コード変換方法を提供する。【解決手段】  読み込みの対象となるデータの文字コードとして想定される文字コードの特徴を文字コード表１，２，３，・・・，ｎとして予めコンピュータ１に記憶させておく。読み込みの対象となるファイル７のデータを記述している文字コードの特徴と文字コード表１，２，３，・・・，ｎの特徴を、文字コードに対応する文字の定義の有無に基いてコンピュータ１で比較し、ファイル７を記述している文字コード表ｊを特定する。文字コード表ｊとコンピュータ１が使用する文字コード表１との組み合わせに適合したルールを適用してファイル７に公知の文字コード変換を施し、変換後のファイル７’をコンピュータ１上で動作するプログラムに読み込ませる。【選択図】図１
2005293440.tif 000002
【特許請求の範囲】
【請求項１】
ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませる前に前記データを記述している文字コードをコンピュータのオペレーティングシステムに適合させるための文字コード変換方法であって、
読み込みの対象となるデータの文字コードとして想定される文字コードの特徴を予め前記コンピュータに記憶させておき、
前記データを前記プログラムに読み込ませるための前処理として、前記データを記述している文字コードの特徴と予め前記コンピュータに記憶されている何種類かの文字コードの特徴とを比較して前記データを記述している文字コードを特定し、
前記特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データに対して文字コード変換を行い、
文字コード変換によって生成された新たなファイルをプログラム実行用のデータ記述ファイルとして保持することを特徴とした文字コード変換方法。
【請求項２】
文字コード変換の際に生成された不要な文字列を削除してプログラム実行用のデータ記述ファイルとして保持することを特徴とした請求項１記載の文字コード変換方法。
【請求項３】
不要な文字列として、少なくとも、連続するスペースを削除することを特徴とした請求項２記載の文字コード変換方法。
【請求項４】
読み込みの対象となるデータの文字コードとして想定される文字コードの特徴として、文字コード表を記憶させておくことを特徴とした請求項１，請求項２または請求項３記載の文字コード変換方法。
【請求項５】
特徴の比較に際し、データを記述している文字コードの幾つかを抽出し、この文字コードに対応する文字が前記文字コード表に定義されている場合に、前記データを記述している文字コードが当該文字コード表の文字コードであると特定することを特徴とした請求項４記載の文字コード変換方法。
【請求項６】
データを記述している文字コードの特徴と予めコンピュータに記憶されている文字コードの特徴とを比較して前記データを記述している文字コードを特定する文字コード解析手段と、
前記文字コード解析手段で特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データの文字コードを変換する文字コード変換手段とを備えたことを特徴とする文字コード変換機能付コンピュータ。
【請求項７】
データを記述している文字コードの特徴と予めコンピュータに記憶されている文字コードの特徴とを比較して前記データを記述している文字コードを特定する文字コード解析手段と、
前記文字コード解析手段で特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データの文字コードを変換する文字コード変換手段と、
前記文字コード変換手段で文字コードを変換されたデータを解析して不要な文字列を削除するデータ解析手段とを備えたことを特徴とする文字コード変換機能付コンピュータ。
【請求項８】
ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませる前に前記データを記述している文字コードをコンピュータのオペレーティングシステムに適合させるための文字コード変換用プログラムであって、
前記コンピュータを、前記データを記述している文字コードの特徴と予め前記コンピュータに記憶されている文字コードの特徴とを比較して前記データを記述している文字コードを特定する文字コード解析手段、
前記文字コード解析手段で特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データの文字コードを変換する文字コード変換手段として機能させるための文字コード変換用プログラム。
【請求項９】
ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませる前に前記データを記述している文字コードをコンピュータのオペレーティングシステムに適合させるための文字コード変換用プログラムであって、
前記コンピュータを、前記データを記述している文字コードの特徴と予め前記コンピュータに記憶されている文字コードの特徴とを比較して前記データを記述している文字コードを特定する文字コード解析手段、
前記文字コード解析手段で特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データの文字コードを変換する文字コード変換手段、
前記文字コード変換手段で文字コードを変換されたデータを解析して不要な文字列を削除するデータ解析手段として機能させるための文字コード変換用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませる前にデータを記述している文字コードをコンピュータのオペレーティングシステムに適合させるための文字コード変換方法および文字コード変換機能付コンピュータと文字コード変換用プログラムに関する。
【背景技術】
【０００２】
ファイルを使ってプログラムにデータを入力する場合、そこで使用されるファイルは、実際にプログラムが動作するオペレーティングシステムとは別のオペレーティングシステム上の汎用ソフトウェア、例えば、エディタ等で作成されることが多い。
また、一般的に、文字コードはオペレーティングシステム毎に異なる。よって、プログラムにデータを入力する際には、実際にプログラムが動作するオペレーティングシステムに合わせ、予め、文字コードを変換したファイルを用意しておく必要があって煩わしい。
【０００３】
文字コードの相違によって生じる不都合を改善するための技術としては、例えば、特許文献１に開示されるような文字データ変換転送方式、あるいは、特許文献２に開示されるような文字コード自動変換装置が公知である。
【０００４】
特許文献１に開示された文字データ変換転送方式は、オペレーティングシステムの異なるコンピュータ間でのデータの受け渡しに際し、データの転送元で転送先のオペレーティングシステムに合わせてデータの文字コードを変換するものであり、文字コードの変換処理が自動化される点では便利であるが、文字コードの変換処理は、必ず、データの転送元で実行する必要がある。
従って、既に何らかの文字コードで記述されたデータがコンピュータの内部または外部に存在したとしても、データを記述している文字コードが当該コンピュータのオペレーティングシステムの文字コードと相違すれば、このデータを当該コンピュータ上で動作するプログラムに読み込ませることはできない。
つまり、コンピュータ上で動作するプログラムにデータを入力する際には、実際にプログラムが動作するコンピュータとは異なる別のコンピュータを利用して予め文字コード変換済みのファイルを準備しておかなければならず、最低限、コンピュータが２台は必要となる欠点がある。
【０００５】
特許文献２に開示された文字コード自動変換装置も、取り扱う文字コードの異なる２以上のコンピュータ間でデータの整合性を得るための文字コード変換を行うといった技術思想に関しては特許文献１のものと同様であり、従って、前記と同様の不都合がある。
【０００６】
また、何れのものも、オペレーションステムの名称やコンピュータ識別コード等を利用者自身が指定することで変換元や変換先の文字コードを特定する構成であるため、コンピュータの操作ミスにより適切な文字コード変換が行えなくなる欠点がある。
【０００７】
【特許文献１】特開平４−３６１３２３号公報
【特許文献２】特開平５−３４１９５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
そこで、本発明の課題は、前記従来技術の不都合を改善し、既に何らかの文字コードで記述されたデータがコンピュータの内部または外部に存在した場合に、単一のコンピュータにより、このデータを記述している文字コードをコンピュータのオペレーティングシステムに適合させることができ、また、オペレーションステムの名称やコンピュータ識別コード等を利用者がわざわざ指定しなくても適切な文字コード変換を実行することのできる文字コード変換方法および文字コード変換機能付コンピュータと文字コード変換用プログラムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の文字コード変換方法は、ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませる前に前記データを記述している文字コードをコンピュータのオペレーティングシステムに適合させるための文字コード変換方法であり、前記課題を解決するため、特に、
読み込みの対象となるデータの文字コードとして想定される文字コードの特徴を予め前記コンピュータに記憶させておき、
前記データを前記プログラムに読み込ませるための前処理として、前記データを記述している文字コードの特徴と予め前記コンピュータに記憶されている何種類かの文字コードの特徴とを比較して前記データを記述している文字コードを特定し、
前記特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データに対して文字コード変換を行い、
文字コード変換によって生成された新たなファイルをプログラム実行用のデータ記述ファイルとして保持することを特徴とした構成を有する。
【００１０】
以上の構成により、ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませるための前処理として、まず、データを記述している文字コードの特徴と予めコンピュータに記憶されている何種類かの文字コードの特徴とを比較し、データを記述している文字コードを特定する。
この際、オペレーションステムの名称やコンピュータ識別コード等を指定してデータを記述している文字コードやコンピュータのオペレーティングシステムで使用されている文字コードを明示する必要はなく、データを記述している文字コードの特徴と予めコンピュータに記憶されている何種類かの文字コードの特徴とを直接的に比較することでデータを記述している文字コードが特定されるので、利用者側におけるコンピュータの操作ミス等によって文字コードの指定を誤るといった問題が解消される。
このようにして、データを記述している文字コードが特定された後、特定された文字コードで記述されているデータがコンピュータのオペレーティングシステムで使用されている文字コードで記述されるようにデータに対する文字コード変換が行われて新たなファイルが生成され、このファイルがプログラム実行用のデータ記述ファイルとして保持される。
従って、データ記述ファイルをコンピュータ上で動作するプログラムに読み込ませることで、当該プログラムに固有の処理操作を的確に実行させることができる。
また、データに対する文字コード変換はプログラムが動作するコンピュータ上で実行されるので、文字コード変換のために別途コンピュータを準備する必要はなく、何らかの文字コードで記述されたデータが既に存在すれば、このデータを其のまま使用してプログラムを実行させることができる。
【００１１】
更に、文字コード変換の際に生成された不要な文字列を削除してプログラム実行用のデータ記述ファイルとして保持するようにしてもよい。
【００１２】
プログラムの実行前に予め不用な文字列を削除しておくことにより、プログラムの誤動作やプログラムの実行に伴う異常の発生を未然に防止することができる。
【００１３】
この際、不要な文字列として、少なくとも、連続するスペースを削除することが望ましい。
【００１４】
データを記述している文字コードが適切に特定された場合であっても、例えば、キャリッジリターン（ＣＲ）やラインフィード（ＬＦ）等のように適切な置き換えが難しい文字制御コードがあり、意味のないスペースが連続的に生成される場合がある。連続するスペースを削除することで、置き換えが困難な文字制御コードに起因する異常を軽減することができる。
【００１５】
また、読み込みの対象となるデータの文字コードとして想定される文字コードの特徴としては、文字コード表を記憶させておくことが望ましい。
【００１６】
文字コードの相違は本質的には文字コード表の相違であるから、データを記述している文字コードの特徴と何種類かの文字コード表の特徴とを比較すれば、データを記述している文字コードを特定することが可能である。
【００１７】
具体的には、データを記述している文字コードの幾つかを抽出し、この文字コードに対応する文字が文字コード表に定義されている場合に、データを記述している文字コードが当該文字コード表の文字コードであると特定することができる。
【００１８】
例えば、データを記述している文字コードを先頭から幾つか抽出し、その文字コードに対応する文字が全て文字コード表に定義されている場合、つまり、データを記述している文字コードが文字コード表の未定義箇所を指定していない場合に、データ記述用の文字コードが当該文字コード表の文字コードであると特定することが可能である。
【００１９】
また、本発明の文字コード変換機能付コンピュータは、前記と同様の課題を達成するため、
データを記述している文字コードの特徴と予めコンピュータに記憶されている文字コードの特徴とを比較して前記データを記述している文字コードを特定する文字コード解析手段と、
前記文字コード解析手段で特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データの文字コードを変換する文字コード変換手段とを備えたことを特徴とする構成を有する。
【００２０】
以上の構成において、文字コード解析手段が、データを記述している文字コードの特徴と予めコンピュータに記憶されている文字コードの特徴とを比較し、データを記述している文字コードを特定する。
具体的には、文字コード解析手段が、データを記述している文字コードの幾つかを抽出し、その文字コードに対応する文字が何れの文字コード表で定義されているかを判定し、抽出された文字コードの全てが定義された文字コード表に対応する文字コードをデータの記述に用いられた文字コードとして特定することが可能である。
文字コード変換手段は、文字コード解析手段で特定された文字コードで記述されているデータがコンピュータのオペレーティングシステムで使用されている文字コードで記述されるようにデータの文字コードを変換する。
【００２１】
また、前記構成に加え、文字コード変換手段により文字コードを変換されたデータを解析して不要な文字列を削除するデータ解析手段を備えるようにしてもよい。
【００２２】
プログラムの実行前に予め不用な文字列を削除しておくことにより、プログラムの誤動作やプログラムの実行に伴う異常の発生を未然に防止することができる。
データ解析手段は、不要な文字列として、少なくとも、連続するスペースを削除することが望ましい。
【００２３】
本発明の文字コード変換用プログラムは、ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませる前に前記データを記述している文字コードをコンピュータのオペレーティングシステムに適合させるための文字コード変換用プログラムであり、前記と同様の課題を達成するため、
前記コンピュータを、前記データを記述している文字コードの特徴と予め前記コンピュータに記憶されている文字コードの特徴とを比較して前記データを記述している文字コードを特定する文字コード解析手段、
前記文字コード解析手段で特定された文字コードで記述されている前記データが前記コンピュータのオペレーティングシステムで使用されている文字コードで記述されるように前記データの文字コードを変換する文字コード変換手段として機能させることを特徴とした構成を有する。
【００２４】
この文字コード変換用プログラムを実装したコンピュータの作用は既に述べた通りである。
【００２５】
また、この文字コード変換用プログラムにより、前記コンピュータを、更に、文字コード変換手段で文字コードを変換されたデータを解析して不要な文字列を削除するデータ解析手段として機能させるようにしてもよい。
【００２６】
この文字コード変換用プログラムを実装したコンピュータの作用は既に述べた通りである。
【発明の効果】
【００２７】
本発明は、ファイルに記述されたデータをコンピュータ上で動作するプログラムに読み込ませるための前処理として、データを記述している文字コードの特徴と予めコンピュータに記憶されている何種類かの文字コードの特徴とを比較してデータを記述している文字コードを特定するようにしたので、オペレーションステムの名称やコンピュータ識別コード等を指定してデータを記述している文字コードやコンピュータのオペレーティングシステムで使用されている文字コードを明示する必要がない。従って、利用者側におけるコンピュータの操作ミス等によって文字コードの指定を誤るといった問題が解消され、適切な文字コード変換を行うことができる。
しかも、文字コード変換はプログラムが動作するコンピュータ上で実行されるので、文字コード変換のために別途コンピュータを準備する必要はなく、何らかの文字コードで記述されたデータが既に存在すれば、このデータを其のまま使用して当該コンピュータ上でプログラムを実行させることができる。
【発明を実施するための最良の形態】
【００２８】
次に、本発明を実施するための最良の形態について、一例を挙げて説明する。図１は、本発明の文字コード変換方法を適用した文字コード変換機能付コンピュータ（以下、単にコンピュータという）の構成の概略を示した機能ブロック図である。
【００２９】
このコンピュータ１は、図１に示される通り、ファイル７に記述されたデータを読み込むためのデータ読み込み手段２と、ファイル７のデータを記述している文字コードの特徴と予めコンピュータ１に記憶されている何種類かの文字コードの特徴とを比較してファイル７のデータを記述している文字コードを特定する文字コード解析手段３を備える。
【００３０】
また、文字コード解析手段３で特定された文字コードで記述されているデータがコンピュータ１のオペレーティングシステムで使用されている文字コードで記述されるようにデータの文字コードを変換する文字コード変換手段４と、文字コード変換手段４で文字コードを変換されたデータを解析して不要な文字列を削除するデータ解析手段５を備える。
【００３１】
文字コード変換手段４による文字コード変換を受けた上でデータ解析手段５によって不要な文字列を削除されたデータは、プログラム実行用のデータ記述ファイルとしてデータベース６内に保持されるようになっている。
【００３２】
図２はコンピュータ１の実質的な構成について示したブロック図である。コンピュータ１は、図２に示される通り、演算処理用のＣＰＵ８、該ＣＰＵ８の駆動制御プログラムを格納したＲＯＭ９，演算データの一時記憶等に用いられるＲＡＭ１０、大容量の不揮発性記憶手段として機能するハードディスクドライブ１１、他のコンピュータや各種ネットワーク等に接続するためのインターフェイス１２を有する。そして、ＣＰＵ８の入出力回路１３には、マン・マシン・インターフェイスを構成するディスプレイ１４とキーボード１５およびマウス１６が接続され、更に、データ記憶媒体を介して外部のファイル７を読み込むためのフロッピーディスクドライブ１７等が接続されている。
【００３３】
ハードディスクドライブ１１には、本発明を適用した文字コード変換用プログラムが格納されており、この文字コード変換用プログラムをＲＡＭ１０に読み出してＣＰＵ８に実行させることにより、ＣＰＵ８が、データ読み込み手段２，文字コード解析手段３，文字コード変換手段４あるいはデータ解析手段５として機能するようになっている。
【００３４】
ハードディスクドライブ１１には、コンピュータ１上で動作する他のアプリケーションプログラムとして、例えば、ワープロソフト等が格納されている。
【００３５】
また、このハードディスクドライブ１１は、プログラム実行用のデータ記述ファイルを保持するためのデータベース６として機能する他、読み込みの対象となるデータの文字コードとして想定される文字コードの特徴を記憶した記憶手段としても機能する。
【００３６】
図３，図４，図５は、ハードディスクドライブ１１に予め記憶させておいた文字コード表の一例を示した概念図である。
【００３７】
ここでは、便宜上、図３の文字コード表を文字コード表１、図４の文字コード表を文字コード表２、図５の文字コード表を文字コード表３と呼ぶことにする。
【００３８】
このうち、コンピュータ１のオペレーティングシステムが実際に使用している文字コードは図３の文字コード表１に対応した文字コードであり、図４の文字コード表２と図５の文字コード表３は、読み込みの対象となるデータの文字コードとして想定される文字コードの特徴として記憶された文字コード表である。
【００３９】
図３，図４，図５は、何れも２バイト文字コード表の例であり、上位１バイト（Ｈ）の数値と下位１バイト（Ｌ）の数値からなる文字コード（Ｈ，Ｌ）で文字コード表のスポット（Ｈ，Ｌ）を指定することで、各文字コード表に固有の文字を指定するように構成されている。
【００４０】
ここで、仮に、図５の文字コード表３の文字コード（Ｈ，Ｌ）＝（０，３）が文字「０」を示すものであると仮定すると、図５の文字コード表３を使用している別のコンピュータ上で動作するプログラム、例えば、ワープロソフトで作成されたデータで文字「０」を表示するために文字コード（Ｈ，Ｌ）＝（０，３）が使用されていた場合、この文字コード（Ｈ，Ｌ）＝（０，３）をコンピュータ１上で動作するワープロソフトに其のまま読み込むと、このコンピュータ１のオペレーティングシステムが使用する図３の文字コード表１で文字コード（Ｈ，Ｌ）＝（０，３）が指定されることになるが、図３の文字コード表１では文字コード（Ｈ，Ｌ）＝（０，３）の文字は未定義であるから、最初に意図した文字「０」が表示されないか、あるいは、エラーが検出されてコンピュータ１上で動作するワープロソフトの動作が停止するといった問題が生じる場合がある。つまり、文字コードの相違から文字コード自体の解釈が不能となる場合がある。
【００４１】
また、仮に、図４の文字コード表２の文字コード（Ｈ，Ｌ）＝（３，２）が文字「＃」を示し、図３の文字コード表１の文字コード（Ｈ，Ｌ）＝（３，２）が文字「２」を示すものであると仮定すると、図４の文字コード表２を使用している別のコンピュータ上で動作するプログラムで作成されたデータで文字「＃」を表示するために文字コード（Ｈ，Ｌ）＝（３，２）が使用されていた場合、この文字コード（Ｈ，Ｌ）＝（３，２）をコンピュータ１上で動作するワープロソフトに其のまま読み込むと、このコンピュータ１のオペレーティングシステムが使用する図３の文字コード表１で文字コード（Ｈ，Ｌ）＝（３，２）が指定され、結果的に、最初に意図した文字「＃」ではなく文字「２」が表示されるといった問題が生じる。つまり、文字コードの解釈は可能であっても、文字コードの相違から意図した文字が表示されなくなる場合がある。
【００４２】
この場合、実際には、図３の文字コード表１においては文字「＃」が文字コード（Ｈ，Ｌ）＝（２，３）で定義されているので、図４の文字コード表２を使用している別のコンピュータ上で動作するワープロソフトで作成されたデータをコンピュータ１上で動作するワープロソフトに読み込む際に、文字コード（Ｈ，Ｌ）＝（３，２）の指定を文字コード（Ｈ，Ｌ）＝（２，３）の指定に変換する処理を行えば、別のコンピュータ上で動作するワープロソフトで作成された文字「＃」をコンピュータ１上で動作するワープロソフトにおいても文字「＃」として意図した通りに適切に表示することが可能である。
【００４３】
このようにして、異なる文字コード表を使用するコンピュータ間あるいはアプリケーション間で、文字コード表の組み合わせに適合した特定のルールを適用して文字コード変換を行う技術については既に公知であるが、この種の技術を適用して適切な文字コード変換を行うためには、各々のコンピュータあるいはアプリケーションが使用している文字コードが明らかになっていなければならないとった制限がある。また、文字コードが明らかになっていたとしても、各々のコンピュータあるいはアプリケーションが使用している文字コード、あるいは、文字コードを特定するために必要とされるオペレーションステムの名称やコンピュータ識別コード等をコンピュータに教示するのは利用者自身の役目となるので、利用者がコンピュータの操作をミスすれば、適切な文字コード変換は行えなくなってしまう。
【００４４】
こういった不都合を解消するため、この実施の形態では、データを記述している文字コードの特徴と予めコンピュータ１に記憶されている何種類かの文字コードの特徴とをコンピュータ１によって比較させ、データを記述している文字コードをコンピュータ１の内部処理によって特定させるようにしている。
【００４５】
次に、コンピュータ１上で動作するワープロソフト等のアプリケーションプログラムに他のコンピュータで作成されたファイル７のデータを読み込ませる際にＣＰＵ８が実行する前処理の概略を示した図７，図８のフローチャートを参照して、データ読み込み手段２，文字コード解析手段３，文字コード変換手段４，データ解析手段５として機能するＣＰＵ８の処理動作について具体的に説明する。
【００４６】
前述した通り、ハードディスクドライブ１１には、本発明を適用した文字コード変換用プログラムが格納されており、この文字コード変換用プログラムをＲＡＭ１０に読み出してＣＰＵ８が実行することで、この前処理が開始され、ＣＰＵ８が、データ読み込み手段２，文字コード解析手段３，文字コード変換手段４あるいはデータ解析手段５として機能することになる。
【００４７】
前処理が開始されると、まず、データ読み込み手段２として機能するＣＰＵ８が、指定されたファイル７から文字コードで記述された一連のデータを読み込んでＲＡＭ１０にバックアップとして一時記憶する（ステップＳ１）。
【００４８】
元データであるファイル７自体はコンピュータ１の内部（ハードディスクドライブ１１内）に存在しても外部に存在しても構わないが、外部からの読み込みが必要な場合には、インターフェイス１２を使用した他のコンピュータとのネットワーク接続、あるいは、ファイル７を収めたデータ記憶媒体とフロッピーディスクドライブ１７等を利用するものとする。
【００４９】
次いで、ＣＰＵ８は、文字コード表選択指標ｊを０に初期化し（ステップＳ２）、該指標ｊの値を改めて１インクリメントした後（ステップＳ３）、ヒット数カウンタｋの値を０に初期化する（ステップＳ４）。
【００５０】
そして、文字コード解析手段３として機能するＣＰＵ８が、ＲＡＭ１０に一時記憶されたファイル７の先頭からデータを記述している文字コードを１つ読み込み（ステップＳ５）、文字コード表選択指標ｊの現在値で特定される文字コード表ｊを検索して、当該１文字コードが文字コード表ｊで定義されているか否かを判定する（ステップＳ６）。
【００５１】
仮に、現時点でｊ＝１、また、ステップＳ５の処理で読み込んだ１文字コードが（Ｈ，Ｌ）＝（３，２）であったとすれば、図３の文字コード表１（＝ｊ）の（Ｈ，Ｌ）＝（３，２）には文字「２」が定義されているので、ステップＳ６の判定結果は真となる。この場合、ファイル７のデータを記述している文字コード表が図３，図４，図５の何れのものであってもステップＳ６の判定結果は真となるので、ファイル７のデータの記述に用いられた文字コードが不明な現段階では、データを記述している文字コード（Ｈ，Ｌ）＝（３，２）によって文字「２」，文字「＃」の何れが指定されるのかは特定し得ない。要するに、この時点で問題となるのは、ステップＳ５の処理で読み込んだ１文字コード（Ｈ，Ｌ）によって指定される文字コード表ｊの（Ｈ，Ｌ）スポットに何らかの文字が定義されているか否かのみである。
【００５２】
ここで、ステップＳ６の判定結果が真となって当該１文字コードが文字コード表ｊで定義されていることが明らかとなった場合には、文字コード解析手段３として機能するＣＰＵ８がヒット数カウンタｋの値を１インクリメントし（ステップＳ７）、該カウンタｋの現在値がコード識別基準値ｍに達しているか否かを判定する（ステップＳ８）。
【００５３】
コード識別基準値ｍは、ファイル７のデータを記述している文字コードが、文字コード表選択指標ｊで特定される文字コード表ｊと一致するか否かを判定するための基準値である。
【００５４】
ステップＳ８の判定結果が偽となってヒット数カウンタｋの現在値がコード識別基準値ｍに達していないことが明らかとなった場合には、文字コード解析手段３として機能するＣＰＵ８は、ＲＡＭ１０に一時記憶されているファイル７から改めて次の文字コードを１つ読み込む（ステップＳ５）。そして、当該１文字コードが文字コード表ｊで定義されていないことがステップＳ６の判定処理で確認されるか、あるいは、カウンタｋの現在値がコード識別基準値ｍに達したことがステップＳ８の処理で確認されるまでの間、ヒット数カウンタｋの値を逐次インクリメントしながら、前記と同様にして、ステップＳ５〜ステップＳ８の処理を繰り返し実行する。
【００５５】
このような処理を繰り返し実行する間にステップＳ６の判定結果が偽となった場合には、ファイル７のデータが文字コード表ｊで定義されていない文字コードを使用して記述されていること、つまり、ファイル７のデータが文字コード表ｊ以外の文字コード表を使用して記述されていることを意味する。
【００５６】
従って、文字コード解析手段３として機能するＣＰＵ８は、文字コード表選択指標ｊの現在値が、ハードディスクドライブ１１に予め記憶させておいた文字コード表の総数ｎ（＝３）に達しているか否か、即ち、ファイル７のデータを記述している文字コードの特徴と予めコンピュータ１に記憶させておいた文字コード表の特徴との比較が全て完了しているか否かを判定することになる（ステップＳ９）。
【００５７】
ステップＳ９の判定結果が真となった場合には、ファイル７のデータを記述している文字コードの特徴と予めコンピュータ１に記憶させておいた幾つかの文字コード表の特徴との比較が全て完了しており、しかも、ファイル７のデータを記述している文字コードの特徴が予めコンピュータ１に記憶させておいた何れの文字コード表の特徴とも一致しないことを意味する。この場合、読み込みの対象となるデータの文字コードとして想定されていなかった文字コードによってファイル７のデータが記述されていることになるので、文字コードの変換は不能となり、文字コード変換に関わる前処理はこの時点で中断される。
【００５８】
一方、ステップＳ９の判定結果が偽となった場合には、ファイル７のデータを記述している文字コードの特徴との比較が行われていない文字コード表が未だ残っていることを意味し、ファイル７のデータを記述している文字コードの特徴が他の文字コード表の特徴と一致する可能性があるので、文字コード解析手段３として機能するＣＰＵ８は、文字コード表選択指標ｊの値を１インクリメントし、該指標ｊの現在値に基づいて別の文字コード表ｊを改めて選択し直し（ステップＳ３）、ヒット数カウンタｋの値を０に初期化した後（ステップＳ４）、前記と同様にしてステップＳ５〜ステップＳ８の処理を繰り返し実行する。
【００５９】
そして、このような処理を繰り返し実行する間にステップＳ８の判定結果が真となった場合には、ＲＡＭ１０にバックアップとして記憶されたファイル７の先頭から順に読み込まれた文字コードが、少なくとも先頭から連続してｍ個だけ文字コード表ｊに定義されていることを意味するので、文字コード解析手段３として機能するＣＰＵ８は、ファイル７のデータが文字コード表ｊの文字コードで記述されているものと判定し、前述のループ処理を終了する。
【００６０】
図３，図４，図５に例示したように、文字コード表は、その種別によって文字が未定義となっているスポット（Ｈ，Ｌ）の分布状態が相違するので、ファイル７のデータを記述している文字コードの幾つか、例えば、先頭からｍ個を抽出し、抽出された文字コードの全てが定義された文字コード表を求めれば、ファイル７のデータが何れの文字コード表に基いて生成されたものであるのかを知ることができる。なお、十分な確度で文字コード表を特定するに足るコード識別基準値ｍの値は予め求めておくものとする。
【００６１】
以上のようにしてファイル７のデータを記述している文字コードに対応した文字コード表ｊを特定した後、ＣＰＵ８は、文字コード表選択指標ｊの現在値が１であるか否か、即ち、ファイル７のデータを記述している文字コードとコンピュータ１のオペレーティングシステムが実際に使用している文字コードとが同じものであるか否かを判定する（ステップＳ１０）。
【００６２】
ステップＳ１０の判定結果が真となった場合には、ファイル７のデータを記述している文字コードとコンピュータ１のオペレーティングシステムが実際に使用している文字コードとが同じものであり、共に文字コード表１に基くものであることを意味するので、実質的な文字コード変換は不要であり、このファイル７が、ＲＡＭ１０内に其のまま保持されることになる。
【００６３】
一方、ステップＳ１０の判定結果が偽となった場合には、ファイル７のデータを記述している文字コードとコンピュータ１のオペレーティングシステムが実際に使用している文字コードとが相違することを意味するので、文字コード変換手段４として機能するＣＰＵ８は、ファイル７のデータを記述している文字コード表ｊとコンピュータ１のオペレーティングシステムが実際に使用している文字コード表１との組み合わせに適合したルールを適用して公知の文字コード変換を実行することで、文字コード表ｊに対応した文字コードで記述されているファイル７のデータが、コンピュータ１のオペレーティングシステムで使用する文字コード表１の文字コードで記述されるようにファイル７におけるデータの文字コードを変換し（ステップＳ１１）、文字コード変換されたファイル７を改めてＲＡＭ１０に上書きして一時記憶する（ステップＳ１２）。
【００６４】
この際、ステップＳ１の処理でバックアップとしてＲＡＭ１０に読み込まれた作業用のファイル７のデータは失われるが、コンピュータ１の内部（ハードディスクドライブ１１内）あるいはファイル７を収めたデータ記憶媒体内の元データはそのまま保持される。
【００６５】
次いで、データ解析手段５として機能するＣＰＵ８が、ＲＡＭ１０に一時記憶されている文字コード変換後のファイル７の先頭からデータを記述している文字コードを１つ読み込み（ステップＳ１３）、当該文字コードがスペースを表すものであるか否かを判定する（ステップＳ１４）。
【００６６】
文字コードがスペースを表すものでなければ、ＣＰＵ８は、連続スペース記憶フラグＦをリセットし（ステップＳ１５）、この文字コードをファイル７に対応するプログラム実行用のデータ記述ファイル７’の適正なデータとしてハードディスクドライブ１１のデータベース６内に保存する（ステップＳ１８）。
【００６７】
一方、ステップＳ１４の判定結果が真となって当該文字コードがスペースを表すものであることが確認された場合には、ＣＰＵ８は、更に、この時点で既に連続スペース記憶フラグＦがセットされているか否か、つまり、今回読み込まれたスペースが連続する２個目以降のスペースであるか否かを判定することになる（ステップＳ１６）。
【００６８】
ステップＳ１６の判定結果が偽となった場合には、今回読み込まれたスペースが最初のスペースもしくは通常の文字に連続する１個目のスペースであることを意味するので、ＣＰＵ８は、連続スペース記憶フラグＦをセットした後（ステップＳ１７）、このスペースが有効な文字列であると見做して、前記と同様に、このスペースを表している文字コードをファイル７に対応するプログラム実行用のデータ記述ファイル７’の適正なデータとして、ハードディスクドライブ１１のデータベース６内に続けて保存する（ステップＳ１８）。
【００６９】
これに対し、ステップＳ１６の判定結果が真となった場合には、今回読み込まれたスペースが連続する２個目以降のスペースであることを意味するので、データ解析手段５として機能するＣＰＵ８は、このスペースが不要な文字列であると見做してステップＳ１８の処理をスキップし、ファイル７に対応するプログラム実行用のデータ記述ファイル７’への当該文字コードの保存を禁止する。
【００７０】
次いで、ＣＰＵ８は、今回読み込まれた文字コードがファイル７に記述されている最後の文字コードであるか否かを判定し（ステップＳ１９）、最後の文字コードでなければ、ＲＡＭ１０に一時記憶されている文字コード変換後のファイル７から次のデータを記述している文字コードを１つ読み込む（ステップＳ１３）。そして、ファイル７に記述されている最後の文字コードがステップＳ１９の処理で検出されるまでの間、データ解析手段５として機能するＣＰＵ８が、前記と同様にして、ステップＳ１３〜ステップ１８の処理を繰り返し実行する。
【００７１】
従って、文字コード変換されたファイル７に２以上のスペースが連続して存在する場合には、最初のスペースを記述している文字コードのみが有効な文字列として認識され、これに連続したスペースを記述する文字コードはデータ解析手段５により不要な文字列としてファイル７から削除され、不要な文字列の削除されたファイル７が、プログラム実行用のデータ記述ファイル７’としてデータベース６内に保存されることになる。
【００７２】
一般に、コンピュータのオペレーティングシステムやワープロソフト等のアプリケーションプログラムの相違あるいは文字コードの相違等により、改行処理にラインフィード（ＬＦ）を利用するもの、キャリッジリターン（ＣＲ）を利用するもの、更には、ラインフィード（ＬＦ）とキャリッジリターン（ＣＲ）を組み合わせて利用するものがあり、これらの間で文字コード変換を行うと、実質的な意味のない多数のスペースから成る文字列が生成される場合があるが、このようにして連続するスペースを削除することによって不要な文字列を削除することができる。
【００７３】
最終的に、適切な文字コード変換を施し且つ不要な文字列を削除したプログラム実行用のデータ記述ファイル７’を元データであるファイル７に代えて当該コンピュータ１上で動作するアプリケーションプログラム、例えば、ワープロソフト等に読み込ませることにより、ファイル７のデータがどのような文字コードで記述されていたかに関わりなく、当該コンピュータ１上で作成したファイルの場合と同様に、ワープロソフト等のアプリケーションプログラムを利用した処理操作を的確に実行させることができる。
【００７４】
この実施の形態では、ファイル７に対する文字コード変換が、ワープロソフト等のアプリケーションプログラムを動作させるコンピュータ１上で実行されるので、文字コード変換のために別途コンピュータを準備する必要はなく、何らかの文字コードで記述されたファイル７が既に存在すれば、前述の前処理をファイル７に施すだけで、このファイルを其のまま使用してプログラムを確実に実行させることができる。
【００７５】
また、アプリケーションプログラムの実行前に予め不用な文字列を削除しておくようにしているので、アプリケーションプログラムの誤動作やアプリケーションプログラムの実行に伴う異常の発生も未然に防止することができる。
【００７６】
図７に示されるようなデータ解析手段５の処理は、当該コンピュータ１で文字コード変換を行った場合（ステップＳ１０の判定結果が偽となった場合）、あるいは、他のコンピュータで文字コード変換を施して文字コードを整合したファイルを当該コンピュータ１に持ち込んだ場合（ステップＳ１０の判定結果が真となった場合）の何れにおいても実行されるので、他のコンピュータで文字コード変換を施したファイル７から不要な文字列を削除するといったデバッグ処理にも利用可能である。
【００７７】
ここでは、一例として、スペースの連続を不用意な文字列と認識して削除する場合について述べたが、コンピュータ１上で動作するアプリケーションプログラムの特性、つまり、プログラム実行用のデータ記述ファイル７’を読み込むプログラムの特性に応じ、他の文字列を不要な文字列として削除したり、更には、データフォーマットの変換等を行うように設計してもよい。
【図面の簡単な説明】
【００７８】
【図１】本発明の文字コード変換方法を適用した文字コード変換機能付コンピュータの構成の概略を示した機能ブロック図である。
【図２】文字コード変換機能付コンピュータの実質的な構成について示したブロック図である。
【図３】文字コード変換機能付コンピュータのオペレーティングシステムが使用している文字コード表の一例を示した概念図である。
【図４】読み込みの対象となるデータの文字コードとして想定される文字コードの特徴として記憶された文字コード表の一例を示した概念図である。
【図５】読み込みの対象となるデータの文字コードとして想定される文字コードの特徴として記憶された文字コード表の他の一例を示した概念図である。
【図６】文字コード変換機能付コンピュータのＣＰＵが実行する前処理（文字コード変換用プログラム）の概略を示したフローチャートである。
【図７】文字コード変換機能付コンピュータのＣＰＵが実行する前処理（文字コード変換用プログラム）の概略を示したフローチャートの続きである。
【符号の説明】
【００７９】
１  文字コード変換機能付コンピュータ
２  データ読み込み手段
３  文字コード解析手段
４  文字コード変換手段
５  データ解析手段
６  データベース
７  ファイル
８  ＣＰＵ（文字コード解析手段，文字コード変換手段，データ解析手段）
９  ＲＯＭ
１０  ＲＡＭ
１１  ハードディスクドライブ
１２  インターフェイス
１３  入出力回路
１４  ディスプレイ
１５  キーボード
１６  マウス
１７  フロッピーディスクドライブ
【図１】
2005293440.tif 000003
【図２】
2005293440.tif 000004
【図３】
2005293440.tif 000005
【図４】
2005293440.tif 000006
【図５】
2005293440.tif 000007
【図６】
2005293440.tif 000008
【図７】
2005293440.tif 000009