JP4721012B2 - 文字列格納システム、文字列格納装置、文字列格納方法及びプログラム - Google Patents

文字列格納システム、文字列格納装置、文字列格納方法及びプログラム Download PDF

Info

Publication number
JP4721012B2
JP4721012B2 JP2007085002A JP2007085002A JP4721012B2 JP 4721012 B2 JP4721012 B2 JP 4721012B2 JP 2007085002 A JP2007085002 A JP 2007085002A JP 2007085002 A JP2007085002 A JP 2007085002A JP 4721012 B2 JP4721012 B2 JP 4721012B2
Authority
JP
Japan
Prior art keywords
character
code
character string
database
string storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007085002A
Other languages
English (en)
Other versions
JP2008242992A (ja
Inventor
久夫 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2007085002A priority Critical patent/JP4721012B2/ja
Publication of JP2008242992A publication Critical patent/JP2008242992A/ja
Application granted granted Critical
Publication of JP4721012B2 publication Critical patent/JP4721012B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データベースに格納する文字列のコードを変換する文字列格納システム、文字列格納装置、文字列格納方法、プログラムに関するものである。
従来、特許文献1(特開平11−195013号公報)にも一例が開示されているように、サロゲートペア対応文字をサポートしていないデータベース(DB)では、当該データベースへの格納文字符号化形式がUTF16の場合において1文字が2バイトで設計され、UTF8の場合において1文字が最大3バイトで設計されていた。
特開平11−195013号公報
しかし、従来のサロゲートペア対応文字をサポートしていないデータベースは、以下のような課題を有していた。
第1に、サロゲートペアに対応する文字をデータベースに格納する場合、データベースに格納する文字数を保証するため、従来に比べ1.3倍から2倍の容量のデータベースを確保する必要があるという問題があった。
すなわち、サロゲートペア対応文字をサポートしようとした場合、ほとんど使用されることがないサロゲートペア対応文字のためにデータベースへの格納文字符号化形式がUTF16の場合において1文字に最大4バイトを必要とするため、要求される格納容量が倍になり、また、UTF8の場合において1文字に最大4バイトを必要とするため、要求される格納容量が約1.3倍となって、ほとんど使用されることがないサロゲートペア対応文字をサポートするには格納容量の無駄が多いという問題があった。
第2に、1文字の最大バイト数が変更になるため、既存データベースの再構築が必要であった。
(目的)
本発明の目的は、データベースに確保する容量を抑制してサロゲートペア対応文字をサポートすることにある。
上記目的を達成するため本発明は、格納文字符号化形式がUTF−16又はUTF−8であるデータベースに格納する文字列のコードを変換するコード変換システムにおいて、ータベースに対してサロゲートペア対応文字の書き込みが発生した場合に、当該サロゲートペア対応文字を、サロゲートペア対応文字に対応して予め設定した所定の外字コードに変換してータベースに書き込むコード変換手段を備え、変換する外字コードに、基本多言語面の私用領域の一部を使用することを特徴とする。
(作用)
上記構成によって、本発明によるコード変換システムは、外字コードを意識することなく、サロゲートペア対応文字を所定の外字コードに変換する。
本発明によれば、以下のような効果が達成される。
第1に、データベースへの格納文字符号化形式がUTF16の場合において、データベースにおける文字列の格納容量が、従来に比べ50%削減できる。
その理由は、コード変換手段によってサロゲートペア対応文字が外字コードに変換されてデータベースに対して格納されるため、データベースへの格納文字符号化形式がUTF16の場合において1文字が必ず2バイトにおさまり、データベースに格納される文字にサロゲートペア対応文字が含まれる可能性がある場合に比べて格納容量が1/2になるからである。
第2に、データベースへの格納文字符号化形式がUTF8の場合において、データベースにおける文字列の格納容量が、従来に比べ25%削減できる。
その理由は、コード変換手段によってサロゲートペア対応文字が外字コードに変換されてデータベースに対して格納されるため、データベースへの格納文字符号化形式がUTF8の場合において1文字が必ず3バイトにおさまり、データベースに格納される文字にサロゲートペア対応文字が含まれる可能性がある場合に比べて格納容量が1/3になるからである。
第3に、データベースに格納される文字にサロゲートペア対応文字が入力されても、データベースが格納できる1文字あたりの最大バイト数に変更がないため、既存データベースの再構築が不要になる。
(第1の実施の形態)
以下、本発明の第1の実施の形態について図を参照して詳細に説明する。
(第1の実施の形態の構成)
図1は、本実施の形態の構成を示すブロック図である。
図1を参照すると、本実施の形態によるコード変換システムは、サロゲートペアコードと外字コードを互いに変換する機能を有するコード変換装置10と、データベース20とを備える。
コード変換装置10は、データベース20に文字列を書き込む書き込み手段1と、サロゲートペア対応文字を外字コードに変換するコード変換手段2と、サロゲートペア対応文字を外字コードに変換するためのコード変換テーブル5と、データベース20から文字列を読み出す読み込み手段3と、外字コードからサロゲートペアコードに変換するコード逆変換手段4と、外字コードをサロゲートペア対応文字に変換するためのコード逆変換テーブル6とを備える。
図2は、コード変換テーブル5の一例を説明する図である。
図2を参照すると、本実施の形態によるコード変換テーブル5は、昇順に配列されたサロゲートペアコード毎に、外字コードが対応付けられている。
図3は、コード逆変換テーブル6の一例を説明する図である。
図3を参照すると、本実施の形態によるコード逆変換テーブル6は、昇順に配列された外字コード毎に、サロゲートペアコードが対応付けられている。
図4は、本実施の形態によるコード変換装置10のハードウェア構成例を示すブロック図である。
図4を参照すると、本発明によるコード変換装置10は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、CPU(Central Processing Unit)1001、RAM(Random Access Memory)等のメインメモリであり、データの作業領域やデータの一時退避領域に用いられる主記憶部1002、インターネット2000を介してデータの送受信を行う通信制御部1003、液晶ディスプレイ、プリンタやスピーカ等の提示部1004、キーボードやマウス等の入力部1005、周辺機器と接続してデータの送受信を行うインタフェース部1006、ROM(Read Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置である補助記憶部1007、本情報処理装置の上記各構成要素を相互に接続するシステムバス1008等を備えている。
本発明によるコード変換装置10は、その動作を、コード変換装置10内部にそのような機能を実現するプログラムを組み込んだ、LSI(Large Scale Integration)等のハードウェア部品からなる回路部品を実装してハードウェア的に実現することは勿論として、上述した各構成要素の各機能を提供するプログラムを、コンピュータ処理装置上のCPU1001で実行することにより、ソフトウェア的に実現することができる。
すなわち、CPU1001は、補助記憶部1007に格納されているプログラムを、主記憶部1002にロードして実行し、コード変換装置10の動作を制御することにより、上述した各機能をソフトウェア的に実現する。
(第1の実施の形態の動作)
次に、本実施の形態の動作について図を参照して詳細に説明する。
図5は、本実施の形態によるコード変換システムの文字列の書き込み処理を示すフローチャートである。
図5を参照すると、データベース20に対して文字列の書き込みが発生した場合、書き込み手段1は、書き込む文字列をコード変換手段2に渡す(ステップS101)。
コード変換手段2は、書き込み手段1から入力された文字列中にサロゲートペア対応文字が存在する場合、コード変換テーブル5を使用して当該文字を外字コードに変換し(ステップS102)、変換後の文字列を書き込み手段1に対して返す(ステップS103)。
書き込み手段1は、変換後の文字列をデータベース20に対して書き込む(ステップS104)。
図6は、本実施の形態によるコード変換システムの文字列の読み出し処理を示すフローチャートである。
図6を参照すると、データベース20から文字列の読み出しが発生した場合、読み込み手段3は、データベース20から文字列を読み込み、その文字列をコード逆変換手段4に対して渡す(ステップS201)。
コード逆変換手段4は、読み込み手段3から入力された文字列中に外字文字が存在する場合コード逆変換テーブル6を使用して当該文字をサロゲートペアコードに変換し(ステップS202)、変換後の文字列を読み込み手段3に対して返す(ステップS203)。
なお、本実施の形態は、変換する外字コードに、基本多言語面(Basic Multilingual Plane:BMP)の私用領域の一部を使用する。また、サロゲートペアに対応する文字を基本多言語面と同じバイト数でデータベース20に格納することができる。
(第1の実施の形態の効果)
本実施の形態によれば、以下の効果を達成することができる。
第1に、データベースへの格納文字符号化形式がUTF16の場合において、データベースにおける文字列の格納容量が、従来に比べ50%削減できる。
その理由は、コード変換装置10によってサロゲートペア対応文字が外字コードに変換されてデータベース20に対して格納されるため、データベース20への格納文字符号化形式がUTF16の場合において1文字が必ず2バイトにおさまり、データベース20に格納される文字にサロゲートペア対応文字が含まれる可能性がある場合に比べて格納容量が1/2になるからである。
第2に、データベースへの格納文字符号化形式がUTF8の場合において、データベースにおける文字列の格納容量が、従来に比べ25%削減できる。
その理由は、コード変換装置10によってサロゲートペア対応文字が外字コードに変換されてデータベース20に対して格納されるため、データベース20への格納文字符号化形式がUTF8の場合において1文字が必ず3バイトにおさまり、データベース20に格納される文字にサロゲートペア対応文字が含まれる可能性がある場合に比べて格納容量が1/3になるからである。
第3に、データベース20に格納される文字にサロゲートペア対応文字が入力されても、データベース20が格納できる1文字あたりの最大バイト数に変更がないため、既存データベースの再構築が不要になる。
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
本発明の第1の実施の形態の構成を示すブロック図である。 第1の実施の形態のコード変換テーブル5の一例を説明する図である。 第1の実施の形態のコード逆変換テーブル6の一例を説明する図である。 第1の実施の形態によるコード変換装置10のハードウェア構成例を示すブロック図である。 第1の実施の形態によるコード変換システムの文字列の書き込み処理を示すフローチャートである。 第1の実施の形態によるコード変換システムの文字列の読み出し処理を示すフローチャートである。
符号の説明
10:コード変換装置
1:書き込む書き込み手段
2:コード変換手段
3:読み込み手段
4:コード逆変換手段
5:コード変換テーブル
6:コード逆変換テーブル
20:データベース
1001:CPU
1002:主記憶部
1003:通信制御部
1004:提示部
1005:入力部
1006:インタフェース部
1007:補助記憶部
1008:システムバス
2000:ネットワーク

Claims (12)

  1. 格納文字符号化形式がUTF−16又はUTF−8であるデータベースに格納する文字列のコードを変換するコード変換システムにおいて、
    前記データベースに対してサロゲートペア対応文字の書き込みが発生した場合に、当該サロゲートペア対応文字を、前記サロゲートペア対応文字に対応して予め設定した所定の外字コードに変換して前記データベースに書き込むコード変換手段を備え
    変換する前記外字コードに、基本多言語面の私用領域の一部を使用することを特徴とする文字列格納システム。
  2. 前記コード変換手段は、
    前記データベースに対して外字文字の読み出しが発生した場合に、当該外字文字をサロゲートペアコードに変換することを特徴とする請求項1に記載の文字列格納システム。
  3. 前記コード変換手段は、
    サロゲートペア対応文字と外字文字とを対応付けたコード変換テーブルを有することを特徴とする請求項1又は請求項2に記載の文字列格納システム。
  4. 格納文字符号化形式がUTF−16又はUTF−8であるデータベースに格納する文字列のコードを変換する文字列格納装置において、
    前記データベースに対してサロゲートペア対応文字の書き込みが発生した場合に、当該サロゲートペア対応文字を、前記サロゲートペア対応文字に対応して予め設定した所定の外字コードに変換して前記データベースに書き込むコード変換手段を備え、
    変換する前記外字コードに、基本多言語面の私用領域の一部を使用することを特徴とする文字列格納装置
  5. 前記コード変換手段は、
    前記データベースに対して外字文字の読み出しが発生した場合に、当該外字文字をサロゲートペアコードに変換することを特徴とする請求項4に記載の文字列格納装置
  6. 前記コード変換手段は、
    サロゲートペア対応文字と外字文字とを対応付けたコード変換テーブルを有することを特徴とする請求項4又は請求項5に記載の文字列格納装置
  7. 格納文字符号化形式がUTF−16又はUTF−8であるデータベースに格納する文字列のコードを変換する文字列格納方法であって、
    前記データベースに対してサロゲートペア対応文字の書き込みが発生した場合に、当該サロゲートペア対応文字を、前記サロゲートペア対応文字に対応して予め設定した所定の外字コードに変換して前記データベースに書き込むコード変換ステップを有し、
    変換する前記外字コードに、基本多言語面の私用領域の一部を使用することを特徴とする文字列格納方法
  8. 前記コード変換ステップにおいて、
    前記データベースに対して外字文字の読み出しが発生した場合に、当該外字文字をサロゲートペアコードに変換することを特徴とする請求項7に記載の文字列格納方法
  9. 前記コード変換ステップにおいて、
    サロゲートペア対応文字と外字文字とを対応付けたコード変換テーブルを用いることを特徴とする請求項7又は請求項8に記載の文字列格納方法
  10. 格納文字符号化形式がUTF−16又はUTF−8であるデータベースに格納する文字列のコードを変換する文字列格納装置上で実行されるプログラムであって、
    前記文字列格納装置に、
    前記データベースに対してサロゲートペア対応文字の書き込みが発生した場合に、当該サロゲートペア対応文字を、前記サロゲートペア対応文字に対応して予め設定した所定の外字コードに変換して前記データベースに書き込むコード変換機能を実現させ、
    変換する前記外字コードに、基本多言語面の私用領域の一部を使用することを特徴とするプログラム
  11. 前記コード変換機能において、
    前記データベースに対して外字文字の読み出しが発生した場合に、当該外字文字をサロゲートペアコードに変換することを特徴とする請求項10に記載のプログラム
  12. 前記コード変換機能において、
    サロゲートペア対応文字と外字文字とを対応付けたコード変換テーブルを用いることを特徴とする請求項10又は請求項11に記載のプログラム
JP2007085002A 2007-03-28 2007-03-28 文字列格納システム、文字列格納装置、文字列格納方法及びプログラム Expired - Fee Related JP4721012B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007085002A JP4721012B2 (ja) 2007-03-28 2007-03-28 文字列格納システム、文字列格納装置、文字列格納方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007085002A JP4721012B2 (ja) 2007-03-28 2007-03-28 文字列格納システム、文字列格納装置、文字列格納方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2008242992A JP2008242992A (ja) 2008-10-09
JP4721012B2 true JP4721012B2 (ja) 2011-07-13

Family

ID=39914228

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007085002A Expired - Fee Related JP4721012B2 (ja) 2007-03-28 2007-03-28 文字列格納システム、文字列格納装置、文字列格納方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4721012B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009042980A (ja) * 2007-08-08 2009-02-26 Fit:Kk 文字コード処理装置
JP5150979B2 (ja) * 2009-06-24 2013-02-27 Necシステムテクノロジー株式会社 コード変換システム、コード変換装置、コード変換方法、及びコード変換プログラム

Also Published As

Publication number Publication date
JP2008242992A (ja) 2008-10-09

Similar Documents

Publication Publication Date Title
CN104503707A (zh) 读取数据的方法以及装置
US20170235473A1 (en) Method and Apparatus for Loading Application Program View, and Electronic Terminal
US11675744B2 (en) Performing a code conversion in a smaller target encoding space
CN102547450B (zh) 延迟的图像解码
CN105205025A (zh) 一种芯片互连的方法、芯片及装置
CN111444680B (zh) 生僻字的编码扩展方法、装置、存储介质及电子设备
JP4983100B2 (ja) データ差異解消プログラムおよびデータ差異解消装置
JP4721012B2 (ja) 文字列格納システム、文字列格納装置、文字列格納方法及びプログラム
JP5467155B1 (ja) 文書処理システム、文書処理方法及びプログラム
US11462287B2 (en) Memory test method, storage medium and computer device
CN110795920A (zh) 一种文档生成方法及设备
WO2012081085A1 (ja) 割込み要因管理装置及び割込み処理システム
JP2007233838A (ja) メモリシステムの制御方法
CN108734149B (zh) 一种文本数据扫描方法和装置
CN113704177B (zh) 一种服务器固件升级文件的存储方法、系统及相关组件
JP2012099101A (ja) オーバーフローテキストボックスを表示するためのレイアウトエンジンの使用
CN114722781A (zh) 一种将流式文档转换为ofd文档的方法和装置
JP2015146100A (ja) 端末装置に表示画面を表示させるサーバ及び方法
CN113986134A (zh) 存储数据的方法、读取数据的方法和装置
US20140059249A1 (en) Data conversion device, data conversion method, and program for data conversion
JP2010287114A (ja) データ格納方法及びデータ格納装置
US20090237698A1 (en) Image processing device and initiating method therefor
CN114327287B (zh) 一种固态硬盘的晶圆设置方法、装置、设备及介质
JP5023295B2 (ja) 利用者環境復元システムおよび利用者環境復元方法
CN107102866B (zh) iOS系统下的原生APP文件生成方法、设备以及服务器

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100728

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100924

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110309

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110322

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140415

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees