JP2016051235A - マイグレーション支援装置 - Google Patents
マイグレーション支援装置 Download PDFInfo
- Publication number
- JP2016051235A JP2016051235A JP2014174745A JP2014174745A JP2016051235A JP 2016051235 A JP2016051235 A JP 2016051235A JP 2014174745 A JP2014174745 A JP 2014174745A JP 2014174745 A JP2014174745 A JP 2014174745A JP 2016051235 A JP2016051235 A JP 2016051235A
- Authority
- JP
- Japan
- Prior art keywords
- character
- program
- code
- data
- width
- 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.)
- Granted
Links
- 230000005012 migration Effects 0.000 title claims abstract description 40
- 238000013508 migration Methods 0.000 title claims abstract description 40
- 238000006243 chemical reaction Methods 0.000 claims abstract description 26
- 240000000220 Panda oleosa Species 0.000 claims description 20
- 235000016496 Panda oleosa Nutrition 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 17
- 230000009466 transformation Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 17
- 238000013500 data storage Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
- Document Processing Apparatus (AREA)
Abstract
Description
第1のコンピュータから第2のコンピュータへのマイグレーションを支援するマイグレーション支援装置であって、
前記第1のコンピュータが有する第1の文書ファイル中の文字データに割り当てられた第1の文字コードを、記憶部が有する文字コード変換表を参照して、前記第2のコンピュータが有する第2の文書ファイル中の文字データに割り当てられた第2の文字コードに変換する文字コード変換部と、
前記第1のコンピュータが有する、前記第1の文書ファイルを処理するための第1のプログラムを、前記第2のコンピュータが有する、前記第2の文書ファイルを処理するための第2のプログラムに変換するプログラム変換部と、
前記第2の文字コードが割り当てられた文字データを前記第2のプログラムに読み込ませることで、前記読み込まれた文字データについて、前記第2のプログラムが指定するメモリ上のエリアの数を、前記文字データに割り当てられていた第1の文字コードを表現するバイト列のバイト数と同じに定める交換情報を生成する交換情報生成部と、
前記交換情報により定められた数からなる前記エリアに、前記読み込まれた文字データに割り当てられた1つの前記第2の文字コードを格納するエリア格納部と、を備える、
ことを特徴とする。
その他の手段については後記する。
これに対し、変換した第2のプログラムは、文字コードの変換によって、1文字を表現するバイト列のバイト数が異なった文字データを処理する際、交換情報を参照することで、第1のプログラムが使用したエリアの数と同じ数のエリアを使用することができる。つまり、第2のプログラムは、メモリ上に指定するエリアを、1文字のデータを格納するための1または複数のエリアとし、文字数単位で文字データを処理することができる。よって、第2のプログラムで組まれたロジックを第1のプログラムで組まれたロジックと同じにすることができ、第2のプログラムのソースコードの記述内容のうち、ロジックに関する部分(例えば、COBOL言語における桁数)を修正する必要はない。
したがって、異なる文字コード体系への切り替えが伴うマイグレーションにおいて、マイグレーションの対象となるプログラムの変換を容易にすることができる。
新規コンピュータ3(第2のコンピュータ)は、オープン系のサーバコンピュータである。
出力プログラム32が読み込む、UTF−8コードが割り当てられた文字データは、例えば、出力ファイル31から抽出した文字データである。
図2に示すように、さまざまな文字データに割り当てられるUTF−8コードは、半角英数記号の文字(半角英数文字+半角記号)を表す文字コード、半角カナの文字を表す文字コード、全角文字を表す文字コードに分類することができる。分類された文字コードに対して、上記した「バイト数」および「エリアの数」が決定される。
本実施形態の処理について説明する。この処理の主体は、作業用PC1の制御部であるが、説明の便宜上、「制御部」という語は省略する。
図3に示すように、作業用PC1は、現行コンピュータ2から新規コンピュータ3へのマイグレーションを行うにあたり、ステップS1から処理を開始する。
図4、図5を参照して、文字コード体系の切り替えを伴うマイグレーションによってプログラムを変換することの具体例を説明する。本具体例では、変換前プログラム(入力プログラム22に相当)も変換後プログラム(出力プログラム32に相当)もCOBOL言語で記述されている。変換前プログラムが扱う文字コードはEBCDIK+KEISコードであり、変換後プログラムが扱う文字コードはUTF−8コードである。
DATA‐A1において、「PIC X」は、1文字1バイトのデータ(EBCDIK)格納エリアをメモリ上に確保することを表しており、「(03)」は、このエリアが3つあることを表している(桁数は3)。よって、DATA‐A1に(半角文字)3文字分のデータを入力できる。
DATA‐A2において、「PIC N」は、1文字2バイトのデータ(KEIS)格納エリアをメモリ上に確保することを表しており、「(03)」は、このエリアが3つあることを表している(桁数は3)。よって、DATA‐A2に(全角文字)3文字分のデータを入力できる。
なお、COBOL言語は、変数を固定長で宣言する。
前記修正として、DATA‐A1については、桁数を3から9に変更している。このように桁数を変更させる理由は、EBCDIKが半角カナ1文字を1バイトで表現するのに対し、UTF−8は半角カナ1文字を3バイトで表現するため、DATA‐A1に半角カナ3文字分のバイト列が入力された場合に対応できるように(データの溢れを防ぐように)、DATA‐A1に9バイト分のエリア(3バイト×3文字)を持たせるためである。
また、前記修正として、DATA‐A2については、桁数を3から5に変更している。このように桁数を変更させる理由は、KEISが全角文字1文字を2バイトで表現するのに対し、UTF−8は全角文字1文字を3バイトで表現するため、DATA‐A2に全角文字3文字のバイト列が入力された場合に対応できるように、DATA‐A2に少なくとも9バイト分のエリア(3バイト×3文字)を持たせるためである。図4(b)の例では、DATA‐A2の桁数を5にすることで、DATA‐A2に10バイト分のエリアを持たせている。
図5(b)の上部には、変換後プログラムのソースコードのうちデータ部ワーキング節の記述例が示されている。本実施例にてプログラムを変換する場合、すでに説明した交換情報Eが用いられる。
本実施形態によれば、変換した出力プログラム32は、文字コードの変換によって、1文字を表現するバイト列のバイト数が異なった文字データを処理する際、交換情報Eを参照することで、入力プログラム32が使用したエリアの数と同じ数のエリアを使用することができる。つまり、出力プログラム32は、メモリ上に指定するエリアを、1文字のデータを格納するための1または複数のエリアとし、文字数単位で文字データを処理することができる。よって、出力プログラム32で組まれたロジックを入力プログラム32で組まれたロジックと同じにすることができ、出力プログラム32のソースコードの記述内容のうち、ロジックに関する部分を修正する必要はない。
したがって、異なる文字コード体系への切り替えが伴うマイグレーションにおいて、マイグレーションの対象となるプログラムの変換を容易にすることができる。
本実施形態では、EBCDIKおよびKEISを用いた文字コード体系から、UTF−8を用いた文字コード体系への切り替えが伴うマイグレーションについて説明した。しかし、JIS8およびSJISを用いた文字コード体系から、UTF−8を用いた文字コード体系への切り替えが伴うマイグレーションについても本発明を適用できる。
本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
11 文字コード変換部
12 プログラム変換部
13 交換情報生成部
14 エリア格納部
2 現行コンピュータ(第1のコンピュータ)
21 入力ファイル(第1の文書ファイル)
22 入力プログラム(第1のプログラム)
3 新規コンピュータ(第2のコンピュータ)
31 出力ファイル(第2の文書ファイル)
32 出力プログラム(第2のプログラム)
T 文字コード変換表
E 交換情報
Claims (3)
- 第1のコンピュータから第2のコンピュータへのマイグレーションを支援するマイグレーション支援装置であって、
前記第1のコンピュータが有する第1の文書ファイル中の文字データに割り当てられた第1の文字コードを、記憶部が有する文字コード変換表を参照して、前記第2のコンピュータが有する第2の文書ファイル中の文字データに割り当てられた第2の文字コードに変換する文字コード変換部と、
前記第1のコンピュータが有する、前記第1の文書ファイルを処理するための第1のプログラムを、前記第2のコンピュータが有する、前記第2の文書ファイルを処理するための第2のプログラムに変換するプログラム変換部と、
前記第2の文字コードが割り当てられた文字データを前記第2のプログラムに読み込ませることで、前記読み込まれた文字データについて、前記第2のプログラムが指定するメモリ上のエリアの数を、前記文字データに割り当てられていた第1の文字コードを表現するバイト列のバイト数と同じに定める交換情報を生成する交換情報生成部と、
前記交換情報により定められた数からなる前記エリアに、前記読み込まれた文字データに割り当てられた1つの前記第2の文字コードを格納するエリア格納部と、を備える、
ことを特徴とするマイグレーション支援装置。 - 前記第1の文字コードを規定する文字コード体系は、半角英数文字、半角記号、および半角カナ文字に対する文字コードについてはEBCDIK(Extended Binary Coded Decimal Interchange Kana Code)とし、全角文字についてはKEIS(Kanji processing Extended Information System)とし、前記第2の文字コードを規定する文字コード体系はUTF(Unicode Transformation Format)−8とし、
前記文字データが半角英数文字、半角記号、または半角カナ文字の文字データである場合には、前記交換情報により定められた、前記エリアの数は1であり、
前記文字データが全角文字の文字データである場合には、前記交換情報により定められた、前記エリアの数は2である、
ことを特徴とする請求項1に記載のマイグレーション支援装置。 - 前記第1の文字コードを規定する文字コード体系は、半角英数文字、半角記号、および半角カナ文字に対する文字コードについてはJIS8とし、全角文字についてはSJIS(Shift JIS)とし、前記第2の文字コードを規定する文字コード体系はUTF−8とし、
前記文字データが半角英数文字、半角記号、または半角カナ文字の文字データである場合には、前記交換情報により定められた、前記エリアの数は1であり、
前記文字データが全角文字の文字データである場合には、前記交換情報により定められた、前記エリアの数は2である、
ことを特徴とする請求項1に記載のマイグレーション支援装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014174745A JP6491438B2 (ja) | 2014-08-29 | 2014-08-29 | マイグレーション支援装置 |
PCT/JP2015/074401 WO2016031959A1 (ja) | 2014-08-29 | 2015-08-28 | マイグレーション支援装置 |
CN201580046561.8A CN106663020B (zh) | 2014-08-29 | 2015-08-28 | 迁移支持装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014174745A JP6491438B2 (ja) | 2014-08-29 | 2014-08-29 | マイグレーション支援装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016051235A true JP2016051235A (ja) | 2016-04-11 |
JP2016051235A5 JP2016051235A5 (ja) | 2017-09-28 |
JP6491438B2 JP6491438B2 (ja) | 2019-03-27 |
Family
ID=55399842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014174745A Active JP6491438B2 (ja) | 2014-08-29 | 2014-08-29 | マイグレーション支援装置 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6491438B2 (ja) |
CN (1) | CN106663020B (ja) |
WO (1) | WO2016031959A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6720993B2 (ja) * | 2018-03-07 | 2020-07-08 | オムロン株式会社 | サポート装置およびサポートプログラム |
CN117270961B (zh) * | 2023-11-21 | 2024-04-12 | 武汉蜂鸟龙腾软件有限公司 | 一种Linux环境下MFC字符资源的解析和加载方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348453A (ja) * | 1993-06-11 | 1994-12-22 | Nec Corp | データコンバージョンプログラム自動生成方式 |
JP2008226010A (ja) * | 2007-03-14 | 2008-09-25 | Hitachi Ltd | コンパイル方法及びコンパイル装置 |
JP2010224656A (ja) * | 2009-03-19 | 2010-10-07 | Ns Solutions Corp | ソースコード生成装置、プログラム及びソースコード生成方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR900700973A (ko) * | 1987-12-11 | 1990-08-17 | 시우 창 로 | 문자인식장치 |
US5309358A (en) * | 1992-02-18 | 1994-05-03 | International Business Machines Corporation | Method for interchange code conversion of multi-byte character string characters |
JPH11203279A (ja) * | 1998-01-19 | 1999-07-30 | Toshiba Corp | かな漢字変換装置、かな漢字変換方法、及び記憶媒体 |
JP4136066B2 (ja) * | 1998-05-11 | 2008-08-20 | パイオニア株式会社 | 文書データ作成装置及び文字表示装置 |
JP2000105765A (ja) * | 1998-09-28 | 2000-04-11 | Toshiba Corp | データ変換装置 |
JP4776050B2 (ja) * | 1999-07-13 | 2011-09-21 | ソニー株式会社 | 配信コンテンツ生成方法、コンテンツ配信方法および装置、並びに、コード変換方法 |
JP3917343B2 (ja) * | 2000-02-25 | 2007-05-23 | 株式会社東芝 | マルチプラットフォーム環境における文字コード変換方式および文字コード変換プログラムを記録したコンピュータ読み取り可能な記録媒体 |
CN101079023B (zh) * | 2003-01-24 | 2012-03-21 | 株式会社理光 | 字符串处理装置、字符串处理方法和成像装置 |
JP4072691B2 (ja) * | 2004-07-15 | 2008-04-09 | ソニー株式会社 | 文字情報変換装置および文字情報変換方法 |
JP4890551B2 (ja) * | 2006-08-10 | 2012-03-07 | シャープ株式会社 | 文字変換装置、文字変換装置の制御方法 |
CN104412255A (zh) * | 2012-06-29 | 2015-03-11 | 株式会社战略经营研究所 | 文本处理***、电子文本、文本处理方法以及程序 |
-
2014
- 2014-08-29 JP JP2014174745A patent/JP6491438B2/ja active Active
-
2015
- 2015-08-28 CN CN201580046561.8A patent/CN106663020B/zh active Active
- 2015-08-28 WO PCT/JP2015/074401 patent/WO2016031959A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348453A (ja) * | 1993-06-11 | 1994-12-22 | Nec Corp | データコンバージョンプログラム自動生成方式 |
JP2008226010A (ja) * | 2007-03-14 | 2008-09-25 | Hitachi Ltd | コンパイル方法及びコンパイル装置 |
JP2010224656A (ja) * | 2009-03-19 | 2010-10-07 | Ns Solutions Corp | ソースコード生成装置、プログラム及びソースコード生成方法 |
Non-Patent Citations (2)
Title |
---|
COBOL2002ユーザーズガイド 解説・手引書, vol. 第3版(3020-3-D42-10), JPN6019004258, September 2004 (2004-09-01), JP, pages p.686−687 * |
安室浩和: "APIから知るWindowsの仕組み:第16回 Unicodeを利用して複数の言語に対応する", 日経ソフトウエア, vol. 第6巻,第10号(通巻65号), JPN6018025920, 24 September 2003 (2003-09-24), JP, pages p.160−168 * |
Also Published As
Publication number | Publication date |
---|---|
JP6491438B2 (ja) | 2019-03-27 |
CN106663020A (zh) | 2017-05-10 |
CN106663020B (zh) | 2020-05-01 |
WO2016031959A1 (ja) | 2016-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9857949B2 (en) | Generating a context for translating strings based on associated application source code and markup | |
CN109799970A (zh) | 一种资源引用关系生成方法及*** | |
CN102741811A (zh) | 改善基于模板的JavaScript小部件的性能 | |
JP6491438B2 (ja) | マイグレーション支援装置 | |
CN102063415B (zh) | 向pdf文件内嵌单字节字体的方法及其*** | |
US11372742B1 (en) | Mining software specification from online documentation | |
Liu et al. | MatrixConverter: Facilitating construction of phenomic character matrices | |
US9921858B2 (en) | Apparatus and method for realizing runtime system for programming language | |
EP3920022A1 (en) | Information processing device, method, and program | |
JP2011154495A (ja) | 文字コード変換装置、文字コード変換方法、および文字コード変換プログラム | |
JP2018037031A (ja) | データ移行プログラム作成システム及びデータ移行プログラム作成用プログラム | |
US20150278089A1 (en) | Execution control method and execution control apparatus | |
US9792197B2 (en) | Apparatus and program | |
CN111279350B (zh) | 用于在服务管理应用接口中提供全球化特征的***和方法 | |
JP2010282248A (ja) | プログラム言語解析実行プログラム | |
WO2016121509A1 (ja) | 情報処理装置、および、情報処理方法 | |
Feiler et al. | Looking Inside a Document | |
Sharan et al. | Character Encodings | |
Olsson et al. | String | |
CN114416035A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
Paranj et al. | Character-to-Number Conversion | |
Horton et al. | Basic Ideas | |
Kelly et al. | How BlitzMax Works | |
Sinha et al. | General Syntaxes | |
Olsson et al. | Strings |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170818 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170818 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180710 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190301 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6491438 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |