JP2018022472A - Program and information processing system - Google Patents
Program and information processing system Download PDFInfo
- Publication number
- JP2018022472A JP2018022472A JP2017096262A JP2017096262A JP2018022472A JP 2018022472 A JP2018022472 A JP 2018022472A JP 2017096262 A JP2017096262 A JP 2017096262A JP 2017096262 A JP2017096262 A JP 2017096262A JP 2018022472 A JP2018022472 A JP 2018022472A
- Authority
- JP
- Japan
- Prior art keywords
- array
- character string
- data
- information processing
- data aggregate
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、情報処理装置から他の情報処理装置へデータを転送することを可能にするプログラム及び情報処理システムに関する。 The present invention relates to a program and an information processing system that enable data to be transferred from an information processing device to another information processing device.
従来、区切り文字により区切られたテキストデータを転送するプログラムが知られている(例えば、特許文献1参照)。 Conventionally, a program for transferring text data delimited by delimiters is known (for example, see Patent Document 1).
しかし、特許文献1に開示された技術では、複数のデータにより構成される構造体等のデータ集合体に対応することが難しいという問題がある。ここで、データ集合体は、配列、連想配列、構造体、ユーザ定義型の変数、クラス及び共用体等、0個以上の値を持つことができる変数である。変数には、オブジェクト、及びオブジェクトのインスタンスが含まれる。構造体等のデータ集合体は、夫々に変数である0個以上のメンバを含んでいる。データ集合体中の変数が要素と呼称される場合は、メンバには要素が含まれる。0個以上のメンバは、順番等の互いの関係が定義されており、0個以上の何れかにデータが代入される。
However, the technique disclosed in
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、データ集合体に係るデータを転送することができるプログラム及び情報処理システムを提供することにある。 The present invention has been made in view of such circumstances, and an object of the present invention is to provide a program and an information processing system capable of transferring data relating to a data aggregate.
本発明の一態様のプログラムは、データ集合体に含まれる一個以上のメンバに格納されたデータを、配列の一個以上の要素に格納する配列作成処理と、前記配列の一個以上の要素に格納されたデータ及びデータの区切りを示す区切り文字を含んだ文字列を作成する文字列作成処理とを情報処理装置に実行させる。 The program of one embodiment of the present invention includes an array creation process for storing data stored in one or more members included in a data aggregate in one or more elements of an array, and stored in one or more elements of the array. The information processing apparatus is caused to execute character string creation processing for creating a character string including data and a delimiter indicating a data delimiter.
本発明の一態様の情報処理システムは、第1情報処理装置及び第2情報処理装置を通信網で接続した情報処理システムであって、前記第1情報処理装置は、データ集合体に含まれる一個以上のメンバに格納されたデータを、予め定められている対応関係に従って、配列の一個以上の要素に格納する第1配列作成部と、前記配列の一個以上の要素に格納されたデータ及びデータの区切りを示す区切り文字を含んだ文字列を作成する文字列作成部と、該文字列作成部が作成した文字列を出力する出力部とを備え、前記第2情報処理装置は、前記データ集合体の一個以上のメンバと前記配列の一個以上の要素との間の前記対応関係を前記第1情報処理装置と共有しており、前記出力部が出力した文字列を取得する取得部と、該取得部で取得した文字列を、前記区切り文字に基づいて0個以上のデータへ変換し、一個以上のデータを配列の一個以上の要素に格納する第2配列作成部と、前記配列の一個以上の要素に格納されたデータを、前記対応関係に従って、データ集合体に含まれる一個以上のメンバに格納するデータ集合体作成部とを備える。 An information processing system according to one embodiment of the present invention is an information processing system in which a first information processing apparatus and a second information processing apparatus are connected by a communication network, and the first information processing apparatus is one piece included in a data aggregate. A first array creating unit for storing data stored in the members in one or more elements of the array in accordance with a predetermined correspondence; and data and data stored in the one or more elements of the array A character string creating unit that creates a character string that includes a delimiter that indicates a delimiter; and an output unit that outputs a character string created by the character string creating unit, wherein the second information processing apparatus includes the data aggregate An acquisition unit that shares the correspondence relationship between the one or more members and the one or more elements of the array with the first information processing apparatus, and acquires the character string output by the output unit; and the acquisition Characters obtained in the department Is converted into zero or more data based on the delimiter, and the second array creation unit stores one or more data in one or more elements of the array, and the data stored in the one or more elements of the array Is stored in one or more members included in the data aggregate according to the correspondence relationship.
本発明の一側面によれば、構造体等のデータ集合体に係るデータを転送することが可能となる。 According to one aspect of the present invention, data related to a data aggregate such as a structure can be transferred.
<実施の形態1>
以下本実施の形態を、図面を参照して説明する。図1は情報処理装置を示すブロック図である。情報処理装置1はインターネット、LAN(Local Area Network)又は携帯電話網等の通信網Nにより他の情報処理装置と相互に接続されている。情報処理装置1は、例えばサーバ装置、パーソナルコンピュータ又はスマートフォン等である。情報処理装置1は、CPU(Central Processing Unit)11、記憶部12、RAM(Random Access Memory)13、入力部14、表示部15、通信部16及びドライブ部17を備える。
<
Hereinafter, the present embodiment will be described with reference to the drawings. FIG. 1 is a block diagram illustrating an information processing apparatus. The
CPU11は、バスを介してハードウェア各部と接続されている。CPU11は例えば一もしくは複数のCPU又はマルチコアCPU等を備える。CPU11は、記憶部12に記憶されたプログラム12Pに従いハードウェアの各部を制御する。
The CPU 11 is connected to each part of hardware via a bus. The CPU 11 includes, for example, one or a plurality of CPUs or a multi-core CPU. The CPU 11 controls each part of the hardware according to the
記憶部12は例えばハードディスク又は大容量メモリ等である。ドライブ部17は、光ディスク等の記録媒体10から情報を読み取る。記憶部12にはCPU11が処理を行う際に必要とする種々のデータ及びプログラム12Pを格納する。CPU11は、記録媒体10に記録されたプログラム12Pをドライブ部17に読み取らせ、読み取ったプログラム12Pを記憶部12に記憶させる。CPU11は、必要に応じてプログラム12Pを記憶部12からRAM13へロードし、ロードしたプログラム12Pに従って、各種の処理を実行する。なお、プログラム12Pは、情報処理装置1の外部からダウンロードされてもよく、予め記憶部12に記憶されていてもよい。この場合、情報処理装置1は、ドライブ部17を備えていない形態であってもよい。
The
RAM13は例えばSRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、フラッシュメモリ等である。RAM13は、記憶部としても機能し、CPU11による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
The
入力部14はマウス又はキーボード等の入力デバイスであり、受け付けた操作情報をCPU11へ送信する。表示部15はCPU11から送信された画像データを表示する。表示部15は例えば液晶ディスプレイである。通信部16は、例えば無線LANカード又は携帯電話用通信モジュール等であり、通信網Nを介して各種情報を送受信する。
The
実施の形態1では、情報処理装置1は、配列を文字列へ変換し、また文字列を配列へ変換する。配列を文字列へ変換する方法を説明する。johoA という要素数が3である配列があり、johoA の要素をjohoA(0)、johoA(1)及びjohoA(2)とする。johoA(0)に”あああ”、johoA(1)に”いいい”、johoA(2)に”ううう”が代入されているとする。配列のいずれの要素にも存在しない文字(例えば「;」)を区切り文字とし、区切り文字を境にして配列の全ての要素を連結し、区切り文字が何であるかを示すために、所定の位置(例えば1文字目)に区切り文字を付記して、文字列を作成する。より具体的には、CPU11は、配列の各要素に格納されているデータを、要素の順に、各要素のデータの区切りを示す区切り文字を付加しながら連結し、所定の位置に区切り文字を付記することにより、文字列を作成する。文字列の作成により、配列が文字列へ変換される。配列johoA は、「;あああ;いいい;ううう」という文字列に変換される。値が代入されていない配列を文字列へ変換しようとした場合は、情報処理装置1は、配列を要素数ゼロの配列とみなして処理を行う。例えば、VB.netで用いられるnothingを文字列へ変換しようとした場合は、情報処理装置1は、nothingを要素数ゼロの配列とみなして処理を行う。
In the first embodiment, the
なお、本実施形態では区切り文字を「;」としたが、これに限られない。例えば、配列のいずれかの要素に「;」が存在した場合、いずれの要素にも存在しない文字、例えば「…」を区切り文字として付加してもよい。なお、本実施形態では区切り文字は文字列を区切る文字としたが、数字等であってもよい。また本実施形態では文字列の先頭に区切り文字を付加したが、区切り文字の位置はこれに限られない。例えば、区切り文字は文字列の後ろに付加してもよい。また、区切りを示すために二個以上の区切り文字が用いられてもよい。 In the present embodiment, the delimiter is “;”, but is not limited thereto. For example, when “;” exists in any element of the array, a character that does not exist in any element, for example, “...” May be added as a delimiter. In this embodiment, the delimiter is a character that delimits a character string, but may be a number or the like. In this embodiment, a delimiter is added to the beginning of the character string, but the position of the delimiter is not limited to this. For example, the delimiter may be added after the character string. Also, two or more delimiters may be used to indicate a delimiter.
次に、文字列を配列へ変換する方法を説明する。文字列の予め定められている所定の位置(例えば1文字目)を区切り文字とみなし、それ以外の文字列は区切り文字によって区切られた文字列とみなす。また、取得した文字列に含まれている順番に、区切り文字によって区切られた文字列を、配列の各要素に格納する。このようにして、文字列は配列の各要素に格納されたデータへ変換される。すなわち、文字列は配列へ変換される。例えば、「たほげほげたぬるぬるたうにうに」という文字列では、1文字目が「た」であるので、「た」が区切り文字であるとみなされる。1文字目の区切り文字を取り除いた文字列「ほげほげたぬるぬるたうにうに」が得られる。この文字列が区切り文字を境にして分割され、johoA(0)=”ほげほげ”、johoA(1)=”ぬるぬる”及びjohoA(2)=”うにうに”という要素を含んだ要素数3の配列johoA が得られる。文字列が空文字列である場合は、情報処理装置1は、文字列を要素数ゼロの配列へ変換する。
Next, a method for converting a character string into an array will be described. A predetermined position (for example, the first character) of the character string is regarded as a delimiter, and other character strings are regarded as character strings delimited by the delimiter. In addition, the character strings delimited by delimiters in the order included in the acquired character string are stored in each element of the array. In this way, the character string is converted into data stored in each element of the array. That is, the character string is converted into an array. For example, in the character string “Tahoge-Huge-Turuku-Urununii”, the first character is “Ta”, so “Ta” is regarded as a delimiter. The character string “Hokehoge Nuru Nuni-uni” obtained by removing the first delimiter is obtained. This string is divided with the delimiter as the boundary, and the number of elements is 3 including the elements johoA (0) = ”Hugehoge”, johoA (1) = “slimy” and johoA (2) = “unimo” The array johoA is obtained. If the character string is an empty character string, the
以後、実施の形態1に示した処理を「配列変換」と呼称する。情報処理装置1は、配列変換を行うためのルーチン(返り値はboolean型)を作成し、該ルーチンの引数を3つ設ける。引数は、配列を文字列へ変換するのかそれとも逆かを指定する値渡しのboolean型変数(toarr)、参照渡しのstring型の配列(arr)、及び参照渡しのstring型(text)である。2つ目の引数は、参照渡しのstring型の配列(arr)である。3つ目の引数は、参照渡しのstring(text)型である。ルーチンは、VB.net等で用いられるプロシージャ、又はC言語等で用いられる関数である。toarrがTRUEの場合はtextを配列変換して作成された配列(textが空文字列の場合は要素数ゼロの配列)がarrに代入され、toarrがFALSEの場合はarrを配列変換して作成された文字列(arrに値が代入されていない場合は空文字列)がtextに代入される。いずれの場合も、成功したら返り値はTRUE、失敗したら返り値はFALSEとなる。ただし、配列が文字列型ではない場合があることを考慮し、配列のデータ型に合わせたルーチンを設けること、又は作成された配列を適切なデータ型に変更するルーチンを別途作成することも可能である。
Hereinafter, the process shown in the first embodiment is referred to as “array conversion”. The
図2は、実施の形態1に係る情報処理装置が配列変換を実行する処理の手順を示したフローチャートである。図2に示す処理の手順は、配列変換を行うためのルーチンによりCPU11が行う処理の一例である。情報処理装置1のCPU11は、プログラム12Pに基づいて以下の処理を実行する。CPU11は、引数に基づいて、配列を文字列へ変換するのかそれとも逆かを判定する(ステップS11)。配列を文字列へ変換する場合(ステップS11:YES)、CPU11は、RAM13又は記憶部12に記憶している配列のいずれの要素にも存在しない文字を区切り文字とすることにより、区切り文字を特定する(ステップS12)。CPU11は、配列の各要素に代入されている各データを読み出し、区切り文字を境にしてデータを連結する(ステップS13)。CPU11は、次に、区切り文字を境にして連結されたデータを含み、所定の位置に区切り文字を含んだ文字列を作成する(ステップS14)。CPU11は、作成した文字列をRAM13又は記憶部12に記憶し、処理を終了する。
FIG. 2 is a flowchart illustrating a procedure of processing in which the information processing apparatus according to
図2のステップS11で、文字列を配列へ変換する場合は(ステップS11:NO)、CPU11は、RAM13又は記憶部12に記憶している文字列の所定の位置に含まれている文字を区切り文字とみなすことにより、区切り文字を特定する(ステップS15)。CPU11は、区切り文字で区切られたデータを文字列から抽出することにより、文字列を0個以上のデータへ変換する(ステップS16)。CPU11は、データの数と同数の要素を有する配列を作成し、配列の各要素に各データを代入する(S17)。CPU11は、作成した配列をRAM13又は記憶部12に記憶し、処理を終了する。
When converting a character string into an array in step S11 of FIG. 2 (step S11: NO), the CPU 11 delimits characters included in a predetermined position of the character string stored in the
<実施の形態2>
実施の形態2では、情報処理装置1は、連想配列を文字列へ変換し、また文字列を連想配列へ変換する。本実施の形態に係る情報処理装置1の構成は、実施の形態1と同様である。
<
In the second embodiment, the
連想配列を文字列へ変換する方法を説明する。連想配列の全てのキーを取り出し、各キーを各要素に代入した第1の配列johoAを作成する。同数の要素数を持つ第2の配列johoBを作成し、配列johoAの各要素に代入された文字列をキーとして連想配列から得られる文字列を、配列johoAの各要素に対応する配列johoBの各要素に代入する。その後、配列johoA及び配列johoBを配列変換し、要素数が2である第3の配列johoCを作成する。また、配列johoAを配列変換した文字列を配列johoCの最初の要素に代入し、配列johoBを配列変換した文字列を配列johoCの次の順番の要素に代入する。そして、配列johoCを配列変換する。値が代入されていない連想配列を文字列へ変換しようとした場合は、情報処理装置1は、連想配列を要素数ゼロの連想配列とみなして処理を行う。例えば、VB.netで用いられるNothingを文字列へ変換しようとした場合は、情報処理装置1は、Nothingを要素数ゼロの連想配列とみなして処理を行う。
A method for converting an associative array into a character string will be described. All keys of the associative array are extracted, and a first array johoA is created in which each key is assigned to each element. Create a second array johoB with the same number of elements, and use the string assigned to each element of the array johoA as a key to obtain the character string obtained from the associative array for each element of the array johoB corresponding to each element of the array johoA Assign to an element. Thereafter, the array johoA and the array johoB are array-converted to create a third array johoC having two elements. Also, the character string obtained by converting the array johoA is assigned to the first element of the array johoC, and the character string obtained by converting the array johoB is assigned to the next element in the array johoC. Then, the array johoC is converted. When attempting to convert an associative array to which no value is assigned to a character string, the
例えば、連想配列のキーが「ど」「は」「あ」「お」「も」であり、値が夫々「まる」「ぎん」「とう」「はん」「ゆう」であるとする。配列johoAは、johoA(0)=”ど”、johoA(1)=”は”、johoA(2)=”あ”、johoA(3)=”お”、及びjohoA(4)=”も”という要素を含んだ要素数5の配列である。配列johoBでは、各キーが格納された配列johoAの各要素と同一の番号の要素に、連想配列の値が格納される。「ど」をキーとする場合は値が「まる」であるため、johoB(0)=”まる”となり、以後同様にjohoB(1)=”ぎん”、johoB(2)=”とう”、johoB(3)=”はん”、johoB(4)=”ゆう”となる。配列johoA及び配列johoBを配列変換すると、夫々「;ど;は;あ;お;も」、「;まる;ぎん;とう;はん;ゆう」となる。夫々の文字列が配列johoCの各要素に格納される。johoC(0)=”;ど;は;あ;お;も”、johoC(1)=”;まる;ぎん;とう;はん;ゆう”となる。johoCを配列変換し、「#;ど;は;あ;お;も#;まる;ぎん;とう;はん;ゆう」が得られる。 For example, it is assumed that the keys of the associative array are “DO”, “HA”, “A”, “O”, “MO”, and the values are “MARU”, “GIN”, “TOU”, “HAN”, “YU”, respectively. The array johoA is johoA (0) = ”do”, johoA (1) = ”is”, johoA (2) = ”a”, johoA (3) = “o”, and johoA (4) = ”also” It is an array of 5 elements including elements. In the array johoB, the value of the associative array is stored in the element having the same number as each element of the array johoA in which each key is stored. When “DO” is used as a key, the value is “maru”, so johoB (0) = ”maru”, and similarly, johoB (1) = “Gin”, johoB (2) = ”to”, johoB (3) = ”han” and johoB (4) = “Yu”. When the array johoA and the array johoB are sequence-converted, they become “; do; ha; a; o; mo” and “; maru; gin; to; han; yu”, respectively. Each character string is stored in each element of the array johoC. johoC (0) = ”; do; ha; a; o; mo”, johoC (1) = ”; maru; gin; to; han; yu”. transpose johoC and get “#; do; ha; a; o; also #; maru; gin; to; han; yu”.
文字列を連想配列へ変換する方法を説明する。文字列を配列変換することにより、第4の配列johoCを作成する。配列johoCの各要素に代入されている文字列を配列変換する。すなわち、配列johoCの最初の要素に代入されている文字列を配列変換した第5の配列johoAを作成し、配列johoCの次の順番の要素に代入されている文字列を配列変換した第6の配列johoBを作成する。配列johoAの各要素に代入されているデータをキー、配列johoAの各要素に対応する配列johoBの各要素に代入されているデータを値として、各データを連想配列に代入することにより、連想配列を作成する。文字列が空文字列である場合は、情報処理装置1は、文字列を要素数ゼロの配列へ変換する。
A method for converting a character string into an associative array will be described. A fourth array johoC is created by array conversion of the character string. Array conversion of character strings assigned to each element of array johoC. That is, a fifth array johoA in which the character string assigned to the first element of the array johoC is array-converted is created, and the character string assigned to the element in the next order of the array johoC is converted to the sixth array Create array johoB. Associative array by assigning each data to an associative array with the data assigned to each element of array johoA as a key and the data assigned to each element of array johoB corresponding to each element of array johoA as a value Create If the character string is an empty character string, the
例えば、文字列が「#;赤;橙;青;紫;黄#;Sr;Na;;K;Ba」であるとする。この文字列を配列変換することにより、johoC(0)=” ;赤;橙;青;紫;黄”、johoC(1)=”;Sr;Na;;K;Ba”という要素を含んだ要素数2の配列johoCが作成される。配列johoCのjohoC(0)に格納された文字列を配列変換して配列johoAが作成され、johoC(1)に格納された文字列を配列変換して配列johoBが作成される。johoAは、johoA(0)=”赤”、johoA(1)=”橙”、johoA(2)=”青”、johoA(3)=”紫”、及びjohoA(4)=”黄”という要素を含む。johoBは、johoB(0)=”Sr”、johoB(1)=”Na”、johoB(2)=””(空文字列)、johoB(3)=”K”、及びjohoB(4)=”Ba”という要素を含む。johoAの各要素に格納されたデータをキー、キーが格納されたjohoAの要素と同番号のjohoBの要素に格納されたデータを値として、連想配列が作成される。
For example, it is assumed that the character string is “#; red; orange; blue; purple; yellow #; Sr; Na ;; K; Ba”. By converting this string, elements containing johoC (0) = ”; red; orange; blue; purple; yellow”, johoC (1) = ”; Sr; Na ;; K; Ba” The array johoC of
以後、「連想配列を配列変換」又は「連想配列に配列変換」と称した場合、実施の形態2に示した処理を指すものとする。また、情報処理装置1は、連想配列を配列変換するためのルーチン(返り値はboolean型)を作成し、該ルーチンの引数を3つ設ける。引数は、配列を文字列へ変換するのかそれとも逆かを指定する値渡しのboolean型(toobj)、参照渡しの連想配列(obj)、及び参照渡しのstring型(text)である。toobjがTRUEの場合は、textを連想配列に配列変換して作成された連想配列(textが空文字列の場合は要素数ゼロの連想配列)がobjに代入される。toobjがFALSEの場合は、連想配列を配列変換することによりobjから作成された文字列(objに値が代入されていない場合は空文字列)がtextに代入される。いずれの場合も、成功したら返り値はTRUE、失敗したら返り値はFALSEとなる。ただし、連想配列のキー及び値のいずれかが文字列型ではない場合があることを考慮し、連想配列のキー若しくは値のデータ型に合わせたルーチンを設けること、又は作成された値を適切なデータ型に変更するルーチンを別途作成することも可能である。
Hereinafter, when “associative array is converted to array” or “array conversion to associative array” is referred to, the processing shown in the second embodiment is assumed. Further, the
図3は、実施の形態2に係る情報処理装置が連想配列の配列変換を行う処理の手順を示したフローチャートである。図3に示す処理の手順は、連想配列の配列変換を行うためのルーチンによりCPU11が行う処理の一例である。情報処理装置1のCPU11は、プログラム12Pに基づいて以下の処理を実行する。CPU11は、引数に基づいて、連想配列を文字列へ変換するのかそれとも逆かを判定する(ステップS21)。連想配列を文字列へ変換する場合(ステップS21:YES)、CPU11は、RAM13又は記憶部12に記憶している連想配列の各キーを各要素に代入した第1の配列を作成する(ステップS22)。CPU11は、第1の配列の各要素に代入された文字列をキーとして連想配列から得られる値を各要素に代入した第2の配列を作成する(ステップS23)。CPU11は、第1の配列及び第2の配列を配列変換し(ステップS24)、第1の配列及び第2の配列を配列変換した文字列を各要素に代入した第3の配列を作成する(ステップS25)。CPU11は、次に、第3の配列を配列変換する(ステップS26)。CPU11は、ステップS26により作成した文字列をRAM13又は記憶部12に記憶し、処理を終了する。
FIG. 3 is a flowchart illustrating a processing procedure in which the information processing apparatus according to the second embodiment performs array conversion of an associative array. The procedure of the process shown in FIG. 3 is an example of a process performed by the CPU 11 by a routine for performing an array conversion of an associative array. The CPU 11 of the
ステップS21で、文字列を連想配列へ変換する場合は(ステップS21:NO)、CPU11は、RAM13又は記憶部12に記憶している文字列を配列変換することにより、第4の配列を作成する(ステップS28)。CPU11は、第4の配列の各要素を配列変換することにより、各要素に代入されている文字列を配列変換した第5の配列及び第6の配列を作成する(ステップS28)。CPU11は、第5の配列の各要素に代入されているデータをキー、第6の配列の各要素に代入されているデータを値として、連想配列を作成する(ステップS29)。CPU11は、作成した連想配列をRAM13又は記憶部12に記憶し、処理を終了する。
When converting a character string into an associative array in step S21 (step S21: NO), the CPU 11 creates a fourth array by array-converting the character string stored in the
<実施の形態3>
実施の形態3では、情報処理装置1は、構造体等のデータ集合体をメンバとして含んでいないデータ集合体を文字列へ変換し、また文字列をデータ集合体へ変換する。本実施の形態に係る情報処理装置1の構成は、実施の形態1と同様である。以後、データ集合体を文字列へ変換する処理及び文字列をデータ集合体へ変換する処理を「テキスト変換」と呼称する。
<Embodiment 3>
In Embodiment 3, the
図4は、実施の形態3における情報処理装置1が行う変換処理の例を説明するための説明図である。図4中にAで示した部分はデータ集合体を文字列へ変換する処理の例を説明する。図4中にBで示した部分は文字列をデータ集合体へ変換する処理の例を説明する。
FIG. 4 is an explanatory diagram for explaining an example of conversion processing performed by the
データ集合体を文字列へ変換する方法を説明する。図4のAに示すように第1情報処理装置1は構造体等のデータ集合体31を配列32を介して文字列35へ変換する。ただし、どの型のデータ集合体から生成された文字列であるかを示す識別文字列を文字列に付加することもでき、この場合は識別文字列を付加した文字列を作成する。データ集合体31は、food型の変数foodとして宣言されているとする。データ集合体31には、name及びkindという二個のメンバが含まれており、name及びkindはString型の変数であるとする。データ集合体31のメンバfood.name及びfood.kindには、「ステーキ」及び「主食」という文字列のデータが格納されているとする。
A method for converting a data aggregate into a character string will be described. As shown in FIG. 4A, the first
第1情報処理装置1は、データ集合体31の各メンバに代入されているデータを、各メンバに対応する配列32の各要素に代入することにより、配列32を作成する。定数ARR_NAME=0、ARR_KIND=1が定義され、配列32は、johoAという配列であり、String型のjohoA(ARR_NAME)及びjohoA(ARR_KIND)という要素を含んでいるとする。データ集合体31の各メンバと配列32の各要素との対応関係が予め定められている。例えば、データ集合体331の各メンバが配列32の各要素に対応する順番が定められている。
The first
図5は、実施の形態3におけるデータ集合体31の各メンバと配列32の各要素との対応関係の例を示す図表である。図5に示す如き対応関係はプログラム12Pに記載されている。CPU11はプログラム12Pを参照することで対応関係を読み込む。なお、図5に示す如き対応関係はプログラム12Pとは別に記憶部12に記憶されていてもよい。図5に示す例では、food.nameに対応する配列32のインデックスは0とし、food.kindに対応する配列32のインデックスは1とする。すなわち、food.nameとjohoA(0)とが対応し、food.kindとjohoA(1)とが対応する。johoA(0)=”ステーキ”となり、johoA(1)=”主食”となる。
FIG. 5 is a chart showing an example of the correspondence between each member of the data aggregate 31 and each element of the
第1情報処理装置1は、配列32を配列変換することにより、文字列35を作成する。本例では、johoA(0)及びjohoA(1)に代入されている「ステーキ」及び「主食」という文字列331及び332が、区切り文字「;」を境にして連結され、1文字目に区切り文字が付加された文字列35が作成される。本例では、文字列35は「;ステーキ;主食」である。また、文字列35は、food型から生成された文字列であることを示す文字列が付加されていてもよい。例えば、「foodclass:」が付加される場合は、「foodclass:;ステーキ;主食」という文字列35が得られる。データ集合体に値が代入されていない場合は、情報処理装置1は、データ集合体を各メンバにデフォルト値が代入された(値が代入されていない状態がデフォルトの場合はその状態)データ集合体とみなして処理を行うこともできる。
The first
文字列をデータ集合体へ変換する方法を説明する。文字列にfood型から生成された文字列であることを示す識別文字列が付加される場合は、情報処理装置1は、food型を示す識別文字列が文字列中の所定の位置に存在するか否かを判定する。識別文字列が所定の位置に存在しない場合は、情報処理装置1は、取得した文字列はfood型から生成された文字列ではないと判定し、処理を中止する。識別文字列が所定の位置に存在する場合は、情報処理装置1は、識別文字列を取り除いた文字列を作成し、これをデータ集合体へ変換すべき文字列であるとみなす。
A method for converting a character string into a data aggregate will be described. When an identification character string indicating that the character string is generated from the food type is added to the character string, the
図4のBに示すように、情報処理装置1は文字列36を配列38を介してデータ集合体39へ変換する。識別文字列を取り除いた後の文字列36は「;ステーキ;主食」である。情報処理装置1は、文字列36を配列変換することにより、配列38を作成する。本例では、johoA(0)及びjohoA(1)を要素とする配列johoAが作成され、文字列36から得られた「ステーキ」及び「主食」という文字列371及び372が、johoA(0)及びjohoA(1)に代入される。情報処理装置1は、データ集合体に含まれる各メンバと配列に含まれる各要素との予め定められている対応関係に従って、配列38の各要素に代入されているデータを、対応するデータ集合体39の各メンバに代入する。すなわち、johoA(0)に格納されている「ステーキ」というデータがfood.nameに代入され、johoA(1)に格納されている「主食」というデータがfood.kindに代入される。このようにして、文字列がデータ集合体へ変換される。
As shown in B of FIG. 4, the
情報処理装置1は、データ集合体をテキスト変換するためのルーチン(返り値はboolean型)を作成し、該ルーチンの引数を3つ設ける。引数は、配列を文字列へ変換するのかそれとも逆かを指定する値渡しのboolean型変数(toobj)、参照渡しのデータ集合体(obj)、及び参照渡しのstring型(text)である。toobjがTRUEの場合はtextからテキスト変換により作成されたデータ集合体をobjに代入し、FALSEの場合はobjをテキスト変換して作成された文字列をtextに代入する。いずれの場合も、成功したら返り値はTRUE、失敗したら返り値はFALSEを返す。
The
図6は、実施の形態3に係る情報処理装置1が行うテキスト変換の処理の手順を示したフローチャートである。図6に示す処理の手順は、データ集合体をメンバとして含んでいないデータ集合体のテキスト変換を行うためのルーチンによりCPU11が行う処理の一例である。情報処理装置1のCPU11は、プログラム12Pに基づいて以下の処理を実行する。CPU11は、引数に基づいて、データ集合体を文字列へ変換するのかそれとも逆かを判定する(ステップS31)。データ集合体を文字列へ変換する場合(ステップS31:YES)、CPU11は、RAM13又は記憶部12に記憶しているデータ集合体の各メンバに格納されているデータを配列の各要素に代入することにより、データ集合体から配列を作成する(ステップS32)。ステップS32では、データ集合体の各メンバと配列の各要素との予め定められている対応関係に従って、各メンバに格納されているデータが対応する要素に代入される。CPU11は、次に、配列を配列変換することにより、文字列を作成する(ステップS33)。CPU21は、作成した文字列をRAM13又は記憶部12に記憶し、処理を終了する。
FIG. 6 is a flowchart illustrating a text conversion process performed by the
ステップS31で、文字列をデータ集合体へ変換する場合は(ステップS31:NO)、CPU11は、RAM13又は記憶部12に記憶している文字列を配列変換することにより、配列を作成する(ステップS34)。CPU11は、次に、配列の各要素に格納されているデータをデータ集合体の各メンバに代入することにより、配列からデータ集合体を作成する(ステップS35)。ステップS33では、配列の各要素とデータ集合体の各メンバとの予め定められている対応関係に従って、各要素に格納されているデータが対応するメンバに代入される。CPU11は、作成したデータ集合体をRAM13又は記憶部12に記憶し、処理を終了する。
In step S31, when converting a character string into a data aggregate (step S31: NO), the CPU 11 creates an array by converting the character string stored in the
本実施の形態によれば、情報処理装置1は、構造体等のデータ集合体を文字列へ変換することができ、また、文字列をデータ集合体へ変換することができる。これにより、一の情報処理装置で構造体等のデータ集合体を用いてまとめて記憶されたデータを、文字列へ変換して他の情報処理装置へ転送することが可能となる。
According to the present embodiment, the
<実施の形態4>
実施の形態4ではデータ集合体をメンバに含むデータ集合体を文字列へ変換し、また文字列を、データ集合体をメンバに含むデータ集合体へ変換する。本実施の形態に係る情報処理装置1の構成は、実施の形態1と同様である。
<Embodiment 4>
In the fourth embodiment, a data aggregate including a data aggregate as a member is converted into a character string, and a character string is converted into a data aggregate including the data aggregate as a member. The configuration of the
データ集合体をメンバに含むデータ集合体を文字列へ変換する方法を説明する。図7は、実施の形態4における情報処理装置1が行うデータ集合体を文字列へ変換する処理の例を説明するための説明図である。第1情報処理装置1は、データ集合体40を文字列44へ変換する。データ集合体40は、string型のnameというメンバと、eiyou型のeiyouというメンバを持つとする。eiyou型は、メンバとしてデータ集合体40に含まれている第2のデータ集合体であり、VitaminA、VitaminBというメンバ(いずれもstring型)を持つとする。データ集合体40は、nameに「ステーキ」、eiyou型のVitaminAに「ビタミンA」、ViraminBに「ビタミンB」が代入されているとする。
A method of converting a data aggregate including the data aggregate into a member will be described. FIG. 7 is an explanatory diagram for explaining an example of processing for converting a data aggregate performed by the
データ集合体40をテキスト変換するためのルーチンは、eiyou型の第2のデータ集合体をテキスト変換するためのルーチンを呼び出す。第2のデータ集合体food.eiyouは、テキスト変換により、johoBという第1の配列41へ変換され、第1の配列41の各要素を含んだ第1の文字列42へ変換される。johoBという第1の配列41は、johoB(0)=”ビタミンA"及びjohoB(1)=”ビタミンB"という要素を含む。第1の配列41は、「eiyou:;ビタミンA;ビタミンB」という第1の文字列42へ変換される。第1の文字列42では、第1の配列41の各要素に格納されたデータが第1の区切り文字「;」を境にして連結され、また、eiyou型のデータ集合体をテキスト変換したことを示す文字列「eiyou:」が付加されている。food.eiyouに値が代入されていない場合は、情報処理装置1は、テキスト変換を行わず、第1の文字列42を空文字列とする。
The routine for text conversion of the data aggregate 40 calls a routine for text conversion of the second data aggregate of the eiyou type. The second data aggregate food.eiyou is converted into a
データ集合体40は、更に、テキスト変換により、johoAという第2の配列43へ変換され、第2の配列43の各要素を含んだ第2の文字列44へ変換される。第2の配列43は、ARR_NAME=0、ARR_EIYOU=1という定数が定義されている。johoA(ARR_NAME)はstring型のnameが代入され、johoA(ARR_EIYOU)はeiyou型をテキスト変換した第1の文字列42(但し、food.eiyouに値が代入されていない場合は空文字列)が代入される。すなわち、johoA(0)=”ステーキ”、johoA(1)=”eiyou:;ビタミンA;ビタミンB”である。第2の文字列44は、配列johoAを配列変換した文字列「#ステーキ#eiyou:;ビタミンA;ビタミンB」(但し、food.eiyouに値が代入されていない場合は「#ステーキ#」)にfood型のデータ集合体40をテキスト変換したことを示す文字列「food:」が付記されたものである。配列johoAを配列変換した文字列は、第2の配列43の各要素に格納されたデータが第2の区切り文字「#」を境にして連結された文字列である。第2の区切り文字は、第2の配列43のいずれの要素にも存在しない文字である。すなわち文字列45は、「food:#ステーキ#eiyou:;ビタミンA;ビタミンB」(但し、food.eiyouに値が代入されていない場合は「food:#ステーキ#」)となる。
The data aggregate 40 is further converted into a
データ集合体40の各メンバと第2の配列43の各要素との対応関係、及び第2のデータ集合体の各メンバと第1の配列41の各要素との対応関係は、予め定められている。例えば、データ集合体40の各メンバが第2の配列43の各要素に対応する順番、及び第2のデータ集合体の各メンバが第1の配列41の各要素に対応する順番が定められている。図8は、実施の形態4におけるデータ集合体の各メンバと配列の各要素との対応関係の例を示す図表である。図8に示す如き対応関係はプログラム12Pに記載されている。CPU11はプログラム12Pを参照することで対応関係を読み込む。なお、図8に示す如き対応関係はプログラム12Pとは別に記憶部12に記憶されていてもよい。図8に示す例では、food.nameとjohoA(0)とが対応し、food.eiyouとjohoA(1)とが対応する。また、food.eiyouのメンバであるVitaminAとjohoB(0)とが対応し、VitaminBとjohoB(1)とが対応する。
The correspondence between each member of the data aggregate 40 and each element of the
データ集合体をメンバに含むデータ集合体へ文字列を変換する方法を説明する。図9は、実施の形態4における情報処理装置1が行う文字列をデータ集合体へ変換する処理の例を説明するための説明図である。情報処理装置1は、文字列45をデータ集合体49へ変換する。文字列45は「food:#ステーキ#eiyou:;ビタミンA;ビタミンB」である。情報処理装置1は、food型を示す文字列が取得した文字列中の所定の位置に存在するか否かを判定する。当該文字列が所定の位置に存在しない場合は、情報処理装置1は、取得した文字列はfood型から生成された文字列ではないと判定し、処理を中止する。food型を示す文字列が所定の位置に存在する場合は、情報処理装置1は、取得した文字列45からfood型を示す文字列を取り除き、「#ステーキ#eiyou:;ビタミンA;ビタミンB」という文字列を得る。この文字列を配列変換することにより、「ステーキ」及び「eiyou:;ビタミンA;ビタミンB」という文字列461及び462が得られ、johoA(0)=”ステーキ”、johoA(1)=”eiyou:;ビタミンA;ビタミンB”を要素とするjohoAという配列47が得られる。
A method for converting a character string into a data aggregate including a data aggregate as a member will be described. FIG. 9 is an explanatory diagram for explaining an example of a process of converting a character string performed by the
johoA(1)に格納された文字列は、eiyou型を示す文字列を取り除いた上で配列変換され、johoB(0)=”ビタミンA”、johoB(1)=”ビタミンB”を要素とするjohoBという配列48が得られる。food型のデータ集合体49のメンバであるnameにはjohoA(0)が代入され、メンバであるデータ集合体eiyouには、配列johoBの各要素が代入される。但しjohoA(1)が空文字列の場合は、情報処理装置1は、johoA(1)をテキスト変換せず、各メンバにデフォルト値が代入された(値が代入されていない状態がデフォルトの場合はその状態)eiyouを作成する。情報処理装置1は、図8に示す如き予め定められている対応関係に従って、配列の各要素に格納されているデータを、対応するデータ集合体の各メンバに代入する。このようにして、データ集合体をメンバに含むデータ集合体49が作成される。
The character string stored in johoA (1) is converted after removing the character string indicating the eiyou type, and johoB (0) = “vitamin A” and johoB (1) = “vitamin B” are used as elements. An
情報処理装置1は、データ集合体をテキスト変換するためのルーチン(返り値はboolean型)を作成し、該ルーチンの引数を3つ設ける。引数は、配列を文字列へ変換するのかそれとも逆かを指定する値渡しのboolean型変数(toobj)、参照渡しのデータ集合体(obj)、及び参照渡しのstring型(text)である。toobjがTRUEの場合はtextからテキスト変換により作成されたデータ集合体をobjに代入し、FALSEの場合はobjをテキスト変換して作成された文字列をtextに代入する。いずれの場合も、成功したら返り値はTRUE、失敗したら返り値はFALSEを返す。
The
図10は、実施の形態4に係る情報処理装置1が行うテキスト変換の処理の手順を示したフローチャートである。図10に示す処理の手順は、データ集合体のテキスト変換を行うためのルーチンによりCPU11が行う処理の一例である。情報処理装置1のCPU11は、プログラム12Pに基づいて以下の処理を実行する。CPU11は、引数に基づいて、データ集合体を文字列へ変換するのかそれとも逆かを判定する(ステップS401)。データ集合体を文字列へ変換する場合(ステップS401:YES)、CPU11は、RAM13又は記憶部12に記憶しているデータ集合体のメンバとして第2のデータ集合体が含まれているか否かを判定する(ステップS402)。第2のデータ集合体が含まれている場合は(ステップS402:YES)、CPU11は、第2のデータ集合体の各メンバに格納されているデータを配列の各要素に代入することにより、第2のデータ集合体から配列を作成する(ステップS403)。ステップS403で作成する配列は第1の配列に対応する。CPU11は、次に、配列を配列変換することにより、文字列を作成する(ステップS404)。ステップS404で作成する文字列は第1の文字列に対応する。
FIG. 10 is a flowchart illustrating a procedure of text conversion processing performed by the
ステップS404が終了した場合、又は第2のデータ集合体が含まれていない場合は(ステップS402:NO)、CPU11は、データ集合体から配列を作成する(ステップS405)。データ集合体に第2のデータ集合体が含まれている場合は、ステップS404で作成された文字列を要素に格納した配列が作成され、作成された配列は第2の配列に対応する。CPU11は、次に、配列を配列変換することにより、文字列を作成する(ステップS406)。データ集合体に第2のデータ集合体が含まれている場合は、作成される文字列は第2の文字列に対応する。CPU21は、作成した文字列をRAM13又は記憶部12に記憶し、処理を終了する。
When step S404 is completed or when the second data aggregate is not included (step S402: NO), the CPU 11 creates an array from the data aggregate (step S405). When the second data aggregate is included in the data aggregate, an array in which the character string created in step S404 is stored in the element is created, and the created array corresponds to the second array. Next, the CPU 11 creates a character string by converting the array (step S406). When the data aggregate includes the second data aggregate, the created character string corresponds to the second character string. CPU21 memorize | stores the produced character string in RAM13 or the memory |
ステップS401で、文字列をデータ集合体へ変換する場合は(ステップS401:NO)、CPU11は、RAM13又は記憶部12に記憶している文字列を配列変換することにより、配列を作成する(ステップS407)。CPU11は、次に、配列のいずれかの要素に、データ集合体をテキスト変換した文字列が格納されているか否かを判定する(ステップS408)。例えば、CPU11は、各要素に格納されている文字列に、「eiyou:」等、データ集合体をテキスト変換したことを示す文字列が含まれているか否かを判定する。データ集合体をテキスト変換した文字列がある場合は(S409)、当該文字列を配列変換することにより、配列を作成する(ステップS409)。ステップS409が終了した場合、又はデータ集合体をテキスト変換した文字列が無い場合は(ステップS408:NO)、配列の各要素に格納されているデータをデータ集合体の各メンバに代入することにより、配列からデータ集合体を作成する(ステップS410)。ステップS410では、配列の各要素とデータ集合体の各メンバとの予め定められている対応関係に従って、各要素に格納されているデータが対応するメンバに代入される。CPU11は、作成したデータ集合体をRAM13又は記憶部12に記憶し、処理を終了する。
When converting character strings into data aggregates in step S401 (step S401: NO), the CPU 11 creates an array by converting the character strings stored in the
本実施の形態によれば、情報処理装置1は、データ集合体をメンバに含むデータ集合体を文字列へ変換することができ、また、データ集合体をメンバに含むデータ集合体へ文字列を変換することができる。これにより、データ集合体をメンバに含むデータ集合体を用いてまとめて一の情報処理装置で記憶されたデータを、文字列へ変換して他の情報処理装置へ転送することが可能となる。
According to the present embodiment, the
<実施の形態5>
実施の形態5では、連想配列をメンバに含むデータ集合体を文字列へ変換し、また文字列を、連想配列をメンバに含むデータ集合体へ変換する。本実施の形態に係る情報処理装置1の構成は、実施の形態1と同様である。
<Embodiment 5>
In the fifth embodiment, a data aggregate including an associative array as a member is converted into a character string, and a character string is converted into a data aggregate including an associative array as a member. The configuration of the
連想配列をメンバに含むデータ集合体を文字列へ変換する方法を説明する。連想配列をメンバに含むデータ集合体をdelta型とする。delta型のデータ集合体は、メンバとしてstring型のnameと、integer型をキーとしてstring型を返す連想配列phoneticと、date型のdays_nodate99991231とを持つ。delta型のオブジェクトであるobjは、obj.name=”フォネティック”、obj.days_nodate99991231=”2017/6/12”、及び連想配列obj.phoneticを含む。obj.phoneticには、1→”あるふぁ”、2→”ぶらぼー”、3→”ちゃーりー”をそれぞれ返す連想配列が代入されている。情報処理装置1は、要素数が3である配列johoAを作成する。ARR_NAME=0、ARR_PHO=1、ARR_DAYS=2が定数として定義されている。情報処理装置1は、johoA(ARR_NAME)にobj.nameつまり「フォネティック」を代入し、johoA(ARR_PHO)に配列変換されたobj.phoneticを代入し、johoA(ARR_DAYS)にobj.days_nodate99991231を示す文字列を代入する。つまり、johoA(ARR_NAME)=”フォネティック”、及びjohoA(ARR_PHO)=”#;1;2;3#;あるふぁ;ぶらぼー;ちゃーりー>”であり、johoA(ARR_DAYS)はobj.days_nodate99991231を示す文字列が代入されている。
A method of converting a data aggregate including associative arrays as members into a character string will be described. A data aggregate including associative arrays as members is assumed to be a delta type. The data set of the delta type has a string type name as a member, an associative array phonetic that returns a string type with an integer type as a key, and a date type days_nodate99991231. obj which is a delta type object includes obj.name = “phonetic”, obj.days_nodate99991231 = “2017/6/12”, and an associative array obj.phonetic. obj.phonetic is assigned an associative array that returns 1 → “something”, 2 → “ballbo”, 3 → “charley”. The
情報処理装置1は、配列johoAを配列変換して、文字列「>フォネティック>#;1;2;3#;あるふぁ;ぶらぼー;ちゃーりー>2017年6月12日」を得る。ここで、「>」は区切り文字である。情報処理装置1は、この文字列にdelta型からテキスト変換されたものであることを示す文字列を付加して、「delta:>フォネティック>#;1;2;3#;あるふぁ;ぶらぼー;ちゃーりー>2017年6月12日」という文字列を得る。
The
連想配列をメンバに含むデータ集合体へ文字列を変換する方法を説明する。「delta:>フォネティック>#;1;2;3#;あるふぁ;ぶらぼー;ちゃーりー>2017年6月12日」をテキスト変換しようとしているとする。情報処理装置1は、文字列にdelta型からテキスト変換されたものであることを示す文字列が含まれているか否かを判定する。文字列にdelta型からテキスト変換されたものであることを示す文字列が含まれていない場合は、情報処理装置1は、文字列はdelta型からテキスト変換されたものではないと判定し、処理を終了する。文字列にdelta型からテキスト変換されたものであることを示す文字列が含まれている場合は、情報処理装置1は、delta型からテキスト変換されたものであることを示す文字列を取り除いて、「>フォネティック>#;1;2;3#;あるふぁ;ぶらぼー;ちゃーりー>2017年6月12日」を得る。
A method of converting a character string into a data aggregate including associative arrays as members will be described. “Delta:> phonetic> #; 1; 2; 3 #; alfa; burabo; charly> June 12, 2017”. The
情報処理装置1は、得られた文字列を配列変換して、johoA(0)=“フォネティック”、johoA(1)=“#;1;2;3#;あるふぁ;ぶらぼー;ちゃーりー”、及びjohoA(2)=” 2017年6月12日”を要素とする配列johoAを得る。情報処理装置1は、Delta型オブジェクトのメンバであるnameに、johoA(0)を代入し、phoneticにはjohoA(1)をinteger型をキーとする連想配列になるようにテキスト変換したもの(johoA(1)が空文字列である場合は要素数ゼロの連想配列)を代入し、days_nodate99991231にはjohoA(2)を日付型に変換したものを代入する。ただし、johoA(2)に「2017年8月32日」「NO MORE CHILD LABOUR」「」(空文字列)といった日付として扱うことができない文字列が代入されている場合は、情報処理装置1は、obj.days_nodate99991231に9999年12月31日を代入する。
The
情報処理装置1は、連想配列をメンバに含むデータ集合体をテキスト変換するためのルーチン(返り値はboolean型)を作成し、ルーチンの引数を3つ設ける。引数は、配列を文字列へ変換するのかそれとも逆かを指定する値渡しのboolean型変数(toobj)、参照渡しのデータ集合体(obj)、及び参照渡しのstring型(text)である。toobjがTRUEの場合はtextをテキスト変換して作成されたデータ集合体をobjに代入し、FALSEの場合はobjをテキスト変換して作成された文字列をtextに代入する。いずれの場合も、成功したら返り値はTRUE、失敗したら返り値はFALSEを返す。
The
データ集合体は、クラスを用いてオブジェクトを定義した場合等、データ集合体の外部からアクセスできないメンバを持つ場合がある。この場合、データ集合体のメンバである連想配列phoneticに代入がなされたとき、情報処理装置1は、代入された内容を、phoneticと同じデータ型であり外部からアクセスできない連想配列p_phoneticに書き込む。書き込み時にp_phoneticが無い場合は、情報処理装置1は、例えばNewステートメントにより、p_phoneticを作成する。連想配列phoneticから値を読み出そうとしたとき、p_phoneticが無いのであれば、情報処理装置1は、p_phoneticが要素数ゼロの配列であるとして処理を行う。p_phoneticがあれば、情報処理装置1は、p_phoneticから取り出された値を返す。
A data aggregate may have members that cannot be accessed from outside the data aggregate, such as when an object is defined using a class. In this case, when an assignment is made to the associative array phonetic that is a member of the data aggregate, the
実施の形態5に係る情報処理装置1は、図6に示したステップS31〜S35と同様の処理を実行することにより、連想配列をメンバに含むデータ集合体のテキスト変換を実行する。CPU11は、プログラム12Pに基づいてステップS31〜S35と同様の処理を実行する。ステップS32では、CPU11は、RAM13又は記憶部12に記憶しているデータ集合体のメンバに含まれる連想配列を配列変換して文字列を作成し、作成した配列及び他のメンバを配列の各要素に代入することにより、データ集合体から配列を作成する。ステップS33が終了した後、CPU21は、作成した文字列をRAM13又は記憶部12に記憶する。ステップS35では、CPU11は、RAM13又は記憶部12に記憶している文字列を配列変換した後、配列の要素に格納されている、連想配列を配列変換した文字列を、連想配列へ変換する。ステップS35が終了した後、CPU11は、作成したデータ集合体をRAM13又は記憶部12に記憶する。
The
<実施の形態6>
実施の形態6では、配列をメンバに含むデータ集合体を文字列へ変換し、また文字列を、配列をメンバに含むデータ集合体へ変換する。本実施の形態に係る情報処理装置1の構成は、実施の形態1と同様である。
<Embodiment 6>
In the sixth embodiment, a data aggregate including an array as a member is converted into a character string, and a character string is converted into a data aggregate including an array as a member. The configuration of the
配列をメンバに含むデータ集合体を文字列へ変換する方法を説明する。配列をメンバに含むデータ集合体をecho型とする。echo型のデータ集合体は、メンバとしてboolean型のispayと、decimal型のpayと、decimal型のtaxと、delta型の配列であるarrとを持つ。ただし、payとtaxはispay=falseの場合は例外をスローする。echo型のオブジェクトであるobjは、obj.ispay=TRUE、obj.pay=200、obj.tax=0.08、及びobj.arrを含む。obj.arrにはdelta型の配列が入っている。情報処理装置1は、要素数が4である配列johoAを作成する。ARR_ISPAY=0、ARR_PAY=1、ARR_TAX=2、ARR_DELTA=3が定数として定義されている。
A method for converting a data set including an array into a member will be described. A data aggregate including an array as a member is an echo type. The echo type data aggregate has a boolean type ispay, a decimal type pay, a decimal type tax, and an arr which is a delta type array. However, pay and tax throw an exception if ispay = false. obj which is an echo type object includes obj.ispay = TRUE, obj.pay = 200, obj.tax = 0.08, and obj.arr. obj.arr contains a delta type array. The
情報処理装置1は、johoA(ARR_ISPAY)にはobj.ispayを文字列型に変換したものを代入し、johoA(ARR_PAY)にはobj.payを文字列型に変換したものを代入し、johoA(ARR_TAX)にはobj.taxを文字列型に変換したものを代入する。また、情報処理装置1は、配列obj.arrと同数の要素数を持つ配列johoBを作成し、obj.arrの各要素に対応するjohoBの各要素に、obj.arrの各要素をテキスト変換した文字列を代入する。例えば、obj.arrの要素と同一番号のjohoBの要素が、obj.arrの要素と対応している。情報処理装置1は、配列johoBを配列変換し、配列変換により作成した文字列をjohoA(ARR_DELTA)に代入する。ただし、情報処理装置1は、obj.ispay=FALSEである場合はjohoA(ARR_PAY)およびjohoA(ARR_TAX)に空文字列を代入する。情報処理装置1は、配列johoAを配列変換し、配列変換により作成した文字列に、echo型をテキスト変換した文字列であることを示す文字列を付加する。
The
配列をメンバに含むデータ集合体へ文字列を変換する方法を説明する。配列をメンバに含むデータ集合体をテキスト変換した文字列を変換しようとしているとする。情報処理装置1は、文字列にecho型からテキスト変換されたものであることを示す文字列が含まれているか否かを判定する。文字列にecho型からテキスト変換されたものであることを示す文字列が含まれていない場合は、情報処理装置1は、文字列はecho型からテキスト変換されたものではないと判定し、処理を終了する。文字列にecho型からテキスト変換されたものであることを示す文字列が含まれている場合は、情報処理装置1は、変換対象の文字列から、echo型からテキスト変換されたものであることを示す文字列を取り除き、配列変換を行う。配列変換により作成された配列をjohoAとする。このとき、johoA(0)は真理値型に変換すればtrueとなる文字列が格納され、johoA(1)は十進型に変換すれば200となる文字列が格納され、johoA(2)は十進型に変換すれば0.08となる文字列が格納されている。また、johoA(3)は、配列変換すればdelta型をテキスト変換したものが代入されている配列になる文字列が格納されている。
A method of converting a character string into a data aggregate including an array as a member will be described. Suppose you are trying to convert a character string that has been converted from a data set that contains an array as a member. The
情報処理装置1は、obj.ispayにjohoA(0)を真理値に変換したものを代入し、obj.payにjohoA(1)を十進型に変換したものを代入し、obj.taxにjohoA(2)を十進型に変換したものを代入する。ただし、情報処理装置1は、obj.ispayにFALSEが代入されたときは、obj.pay、obj.taxへの代入を行わない。情報処理装置1は、johoA(3)に格納された文字列を配列変換した配列(johoA(3)が空文字列である場合は要素数ゼロの配列)johoBを作成し、obj.arrにjohoBと同数の要素数を定義する。johoBの各要素をテキスト変換し、johoBの各要素に対応するobj.arrの各要素に、johoBの各要素をテキスト変換したデータを代入する。例えば、johoBの要素と同一番号のobj.arrの要素が、johoBの要素と対応している。
The
情報処理装置1は、配列をメンバに含むデータ集合体をテキスト変換するためのルーチン(返り値はboolean型)を作成し、ルーチンの引数を3つ設ける。1つ目の引数はデータ集合体を文字列へ変換するのかそれとも逆かを指定する値渡しのboolean型変数(toobj)である。2つ目の引数は参照渡しのデータ集合体(obj)である。3つ目の引数は参照渡しのstring(text)型である。toobjがTRUEの場合はtextをテキスト変換して作成されたデータ集合体をobjに代入し、FALSEの場合はobjをテキスト変換して作成された文字列をtextに代入する。いずれの場合も、成功したら返り値はTRUE、失敗したら返り値はFALSEを返す。
The
実施の形態6に係る情報処理装置1は、図6に示したステップS31〜S35と同様の処理を実行することにより、配列をメンバに含むデータ集合体のテキスト変換を実行する。CPU11は、プログラム12Pに基づいてステップS31〜S35と同様の処理を実行する。ステップS32では、CPU11は、RAM13又は記憶部12に記憶しているデータ集合体のメンバに含まれる配列を配列変換して文字列を作成し、作成した配列及び他のメンバを配列の各要素に代入することにより、データ集合体から配列を作成する。ステップS33が終了した後、CPU21は、作成した文字列をRAM13又は記憶部12に記憶する。ステップS35では、CPU11は、RAM13又は記憶部12に記憶している文字列を配列変換した後、配列の要素に格納されている、配列を配列変換した文字列を、配列へ変換する。ステップS35が終了した後、CPU11は、作成したデータ集合体をRAM13又は記憶部12に記憶する。
The
<実施の形態7>
実施の形態7では、データ集合体を情報処理装置間で転送する。図11は、実施の形態7に係る情報処理システムの構成を示すブロック図である。情報処理システムは、情報処理装置(第1情報処理装置)1及び第2情報処理装置2を備える。情報処理装置1の構成は、実施の形態1〜6と同様である。図11に示すように、情報処理装置1及び第2情報処理装置2は、通信網Nに接続されている。
<Embodiment 7>
In the seventh embodiment, the data aggregate is transferred between information processing apparatuses. FIG. 11 is a block diagram illustrating a configuration of an information processing system according to the seventh embodiment. The information processing system includes an information processing device (first information processing device) 1 and a second
第2情報処理装置2は、サーバ装置、パーソナルコンピュータ又はスマートフォン等のコンピュータである。第2情報処理装置2は、CPU21、記憶部22、RAM23、入力部24、表示部25、通信部26及びドライブ部27を備える。第2情報処理装置2のCPU21、記憶部22、RAM23、入力部24、表示部25、通信部26及びドライブ部27の構成は、情報処理装置1のCPU11、記憶部12、RAM13、入力部14、表示部15、通信部16及びドライブ部17の構成と同様であるため、簡潔のため記載を省略する。CPU21は、光ディスク等の記録媒体20に記録されたプログラム22Pをドライブ部27に読み取らせ、読み取ったプログラム22Pを記憶部22に記憶させる。なお、プログラム22Pは、サーバ2の外部からダウンロードされてもよく、予め記憶部22に記憶されていてもよい。この場合、サーバ2は、ドライブ部27を備えていない形態であってもよい。
The second
情報処理装置1及び第2情報処理装置2は、図5又は図8に示す如き、予め定められているデータ集合体と配列との対応関係を記憶している。例えば、対応関係は、プログラム12P及びプログラム22Pに含まれている。また例えば、対応関係は、記憶部12及び記憶部22に記憶されている。
The
図12は、実施の形態7に係る情報処理システムが実行する処理の手順を示すフローチャートである。情報処理装置1のCPU11は、プログラム12Pに基づいて以下のステップS51〜S54の処理を実行し、第2情報処理装置2のCPU21は、プログラム22Pに基づいて以下のステップS55〜S59の処理を実行する。CPU11は、RAM13又は記憶部12に記憶しているデータ集合体の中から、転送すべきデータ集合体を指定する(ステップS51)。ステップS51では、CPU11は、例えば、使用者が入力部14を操作することによって、転送すべきデータ集合体を示す情報を受け付け、受け付けた情報が示すデータ集合体を指定する。CPU11は、次に、指定したデータ集合体をテキスト変換することにより、データ集合体を変換した文字列を作成する(ステップS52)。データ集合体を文字列へ変換する方法は、実施の形態1〜6で説明した方法と同様である。CPU11は、次に、作成した文字列を含むデータファイルを作成し(ステップS53)、作成したデータファイルを、通信部16に、通信網Nを介して第2情報処理装置2へ送信させる(ステップS54)。データ集合体を変換した文字列は、テキストデータとしてデータファイルに含まれる。
FIG. 12 is a flowchart illustrating a procedure of processing executed by the information processing system according to the seventh embodiment. The CPU 11 of the
第2情報処理装置2は、情報処理装置1から送信されたデータファイルを通信部26で受信する(ステップS55)。第2情報処理装置2は、受信したデータファイルをRAM23又は記憶部22に記憶し、CPU21は、受信したデータファイルの中から、データファイルを指定する(ステップS56)。より詳しくは、CPU21は、取得すべきデータ集合体に係る文字列が含まれているデータファイルを指定する。CPU11は、例えば、使用者が入力部24を操作することによって、データファイルを示す情報を受け付け、受け付けた情報が示すデータファイルを指定する。CPU21は、次に、指定したデータファイルから、データ集合体が変換された文字列を取得し(ステップS57)、テキスト変換により、文字列をデータ集合体へ変換する(ステップS58)。文字列をデータ集合体へ変換する方法は、実施の形態1〜6で説明した方法と同様である。CPU21は、作成したデータ集合体を記憶部22に保存し(ステップS59)、処理を終了する。
The second
本実施の形態によれば、情報処理装置1は、データ集合体を文字列へ変換して第2情報処理装置2へ送信し、第2情報処理装置2は、受信した文字列をデータ集合体へ変換する。これにより、一以上のデータをまとめたデータ集合体を情報処理装置1から第2情報処理装置2へ転送することが可能となる。
According to the present embodiment, the
<実施の形態8>
実施の形態8では、情報処理装置はデータ集合体をダウンロードにより取得する。図13は、実施の形態8に係る情報処理システムの構成を示すブロック図である。情報処理システムは、情報処理装置(第1情報処理装置)1、第2情報処理装置2及び記憶装置3を備える。情報処理装置1及び第2情報処理装置2の構成は、実施の形態7と同様である。図11に示すように、情報処理装置1、第2情報処理装置2及び記憶装置3は、通信網Nに接続されている。
<Eighth embodiment>
In the eighth embodiment, the information processing apparatus acquires a data aggregate by downloading. FIG. 13 is a block diagram illustrating a configuration of an information processing system according to the eighth embodiment. The information processing system includes an information processing device (first information processing device) 1, a second
記憶装置3は、サーバ装置等のコンピュータである。記憶装置3は、CPU31、記憶部32、RAM33及び通信部34を備える。記憶部32は例えばハードディスク又は大容量メモリ等である。CPU31は、記憶部32に記憶されたプログラム32Pに従いハードウェアの各部を制御する。通信部34は、通信網Nを介して各種情報を送受信する。
The storage device 3 is a computer such as a server device. The storage device 3 includes a
本実施形態では、情報処理装置1はデータ集合体をテキスト変換して記憶装置3へアップロードし、第2情報処理装置2は記憶装置3からデータをダウンロードすることによりデータ集合体を取得する。図14は、実施の形態8に係る情報処理装置1が実行する処理の手順を示すフローチャートである。情報処理装置1のCPU11は、プログラム12Pに基づいて以下の処理を実行する。CPU11は、RAM13又は記憶部12に記憶しているデータ集合体をテキスト変換することにより、データ集合体を変換した文字列を作成し、作成した文字列を含むデータファイルを作成する(ステップS61)。データ集合体を文字列へ変換する方法は、実施の形態1〜6で説明した方法と同様である。データ集合体を変換した文字列は、テキストデータとしてデータファイルに含まれる。
In the present embodiment, the
CPU11は、次に、データ集合体に関する設定内容を各データ集合体別に記録したリストを作成し、作成したリストを含むリストファイルを作成する(ステップS62)。データ集合体に関する設定内容には、データ集合体を変換した文字列が含まれるデータファイルの名称、データファイルをダウンロードできる期間、データ集合体の定義、データ集合体のメンバとデータ集合体を変換した配列の要素との対応関係等が含まれている。CPU11は、次に、データファイル及びリストファイルを、通信部16に、通信網Nを介して記憶装置3へ送信させ(ステップS63)、処理を終了する。
Next, the CPU 11 creates a list in which setting contents relating to the data aggregate are recorded for each data aggregate, and creates a list file including the created list (step S62). The settings related to the data aggregate include the name of the data file that contains the character string converted from the data aggregate, the period during which the data file can be downloaded, the definition of the data aggregate, and the data aggregate members and data aggregates converted. Correspondences with array elements are included. Next, the CPU 11 causes the
記憶装置3は、情報処理装置1から送信されたデータファイル及びリストファイルを通信部34で受信し、受信したデータファイル及びリストファイルを記憶部32に記憶する。この結果、記憶部32にはデータファイル321及びリストファイル322が記憶されている。
The storage device 3 receives the data file and list file transmitted from the
図15は、実施の形態8に係る第2情報処理装置2が実行する処理の手順を示すフローチャートである。CPU21は、通信部26に、記憶装置3から通信網Nを介してリストファイル322をダウンロードさせる(ステップS71)。CPU21は、次に、リストファイル322を利用して、ダウンロードすべきデータファイルを指定する(ステップS72)。ダウンロードすべきデータファイルを指定する方法には、種々の方法が用いられ得る。例えば、CPU21は、リストファイル322を利用して、データファイルの名称等のデータ集合体に関する設定内容のリストを表示部25に表示させ、表示されたリストを視認した使用者が入力部24を操作することによって、データファイルを示す情報を受け付け、受け付けた情報が示すデータファイルを指定してもよい。また、例えば、CPU21は、リストに記録されたデータファイルを無条件で指定してもよい。また、例えば、CPU21は、作成されてからの経過時間が一定期間内であるデータファイルを指定する等、時刻に応じてデータファイルを指定してもよい。CPU21は、次に、指定したデータファイル321を、通信部26に、記憶装置3から通信網Nを介してダウンロードさせる(ステップS73)。CPU21は、ダウンロードしたデータファイル321をRAM23又は記憶部22に記憶する。
FIG. 15 is a flowchart illustrating a procedure of processing executed by the second
CPU21は、ダウンロードしたデータファイル321の中から、データ集合体が変換された文字列を取得し(ステップS74)、テキスト変換により、文字列をデータ集合体へ変換する(ステップS75)。文字列をデータ集合体へ変換する方法は、実施の形態1〜6で説明した方法と同様である。CPU21は、作成したデータ集合体を記憶部22に保存し(ステップS76)、処理を終了する。
The
本実施の形態によれば、情報処理装置1は、データ集合体を文字列へ変換し、文字列を含むデータを記憶装置3へアップロードし、第2情報処理装置2は、文字列を含むデータをダウンロードし、文字列をデータ集合体へ変換する。これにより、複数のデータをまとめたデータ集合体を、記憶装置3を中継して情報処理装置1から第2情報処理装置2へ転送することが可能となる。また、記憶装置3に記憶されているデータを情報処理装置で随時ダウンロードしてデータ集合体を作成することにより、複数の情報処理装置でデータ集合体を共用することができる。
According to the present embodiment, the
なお、実施の形態7及び8においては、通信網Nを介してデータの転送を行う形態を示したが、情報処理装置1及び第2情報処理装置2は、その他の方法でデータの転送を行う形態であってもよい。例えば、情報処理装置1は、データ集合体を変換した文字列を記録媒体に記録することによって文字列を出力し、第2情報処理装置2は、記録媒体から文字列を読み出すことによって文字列を取得し、文字列をデータ集合体へ変換してもよい。
In the seventh and eighth embodiments, the mode of transferring data via the communication network N is shown. However, the
また、実施の形態1〜8においては、データ集合体は、当該データ集合体の外部からアクセスできないメンバを持つことができる。図16は、外部からアクセスできないメンバを持つデータ集合体4に対する処理の概念を示す概念図である。情報処理装置1(又は第2情報処理装置2)は、データ集合体4がデータ集合体4の外部からアクセスできないメンバを持つ場合、外部からのアクセス可能なメンバ41に代入401があったとき、代入された内容を、外部からアクセスできないメンバ42に代入402を行う。メンバ41から値を取り出すとき、情報処理装置1(又は第2情報処理装置2)は、メンバ42の内容の確認403を行い、メンバ42に値が代入されていないとき(メンバ42のデータ型について予め定められている特定の値が代入されているときを含む)は、予め決められた値を返す(404)。例えば、メンバ42が配列又は連想配列であれば、要素数0の配列又は連想配列が返される。メンバ42が配列及び連想配列以外のデータ集合体であれば、各メンバにデフォルト値が代入された状態(値が代入されていない状態がデフォルトの場合はその状態)のデータ集合体が返される。メンバ42に値が代入されているとき(特定の値が代入されているときを除く)は、情報処理装置1は、メンバ42に代入された値を返す(404)。
In the first to eighth embodiments, a data aggregate can have members that cannot be accessed from outside the data aggregate. FIG. 16 is a conceptual diagram showing the concept of processing for the data aggregate 4 having members that cannot be accessed from the outside. When the data aggregate 4 has a member that cannot be accessed from outside the data aggregate 4, the information processing apparatus 1 (or the second information processing apparatus 2) has an
また、実施の形態1〜8においては、変数がNull許容型である場合、変数は、値を文字列にするときに、変数のデータ型の値にならない文字列を代入されることができる。例えば、変数は、数値型であれば、空文字列などの数値にならない値を代入されることができ、日付型であれば、空文字列などの日付にならない値を代入されることができる。Null許容型の変数にそのデータ型にならない文字列を代入しようとする場合、代わりにNullを代入することができる。 In the first to eighth embodiments, when the variable is a null-allowable type, the variable can be assigned a character string that does not become the value of the variable data type when the value is a character string. For example, a variable can be assigned a non-numeric value such as an empty character string if it is a numeric type, and can be assigned a non-date value such as an empty string if it is a date type. If you want to assign a string that does not have that data type to a nullable variable, you can substitute Null instead.
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。また、各実施の形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 The embodiment disclosed this time is to be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the meanings described above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims. Further, each embodiment can be appropriately combined within a range in which processing contents are not contradictory.
1 情報処理装置(第1情報処理装置)
12P プログラム
2 第2情報処理装置
22P プログラム
1 Information processing device (first information processing device)
Claims (6)
前記配列の一個以上の要素に格納されたデータ及びデータの区切りを示す区切り文字を含んだ文字列を作成する文字列作成処理と
を情報処理装置に実行させるプログラム。 An array creation process for storing data stored in one or more members included in the data aggregate in one or more elements of the array;
A program for causing an information processing apparatus to execute data stored in one or more elements of the array and a character string creating process for creating a character string including a delimiter indicating a delimiter of the data.
前記データ集合体に第2のデータ集合体が含まれる場合に、該第2のデータ集合体に含まれる一個以上のメンバに格納されたデータを、第1の配列の一個以上の要素に格納し、
前記第1の配列の一個以上の要素に格納されたデータ及び第1の区切り文字を含んだ第1の文字列を作成し、
前記第2のデータ集合体以外のメンバ及び前記第1の文字列の少なくとも何れかを、第2の配列の一個以上の要素に格納する処理を含み、
前記文字列作成処理は、
前記第2の配列の一個以上の要素に格納されたデータ及び第2の区切り文字を含んだ文字列を作成する処理を含む
請求項1に記載のプログラム。 The array creation process includes
When the data aggregate includes a second data aggregate, the data stored in one or more members included in the second data aggregate is stored in one or more elements of the first array. ,
Creating a first character string including data stored in one or more elements of the first array and a first delimiter;
Storing at least one of a member other than the second data aggregate and the first character string in one or more elements of a second array,
The character string creation process includes:
The program according to claim 1, further comprising a process of creating a character string including data stored in one or more elements of the second array and a second delimiter.
前記配列の一個以上の要素に格納されているデータを、特定した区切り文字を境にして連結し、
区切り文字を境にして連結したデータを含み、所定の位置に前記区切り文字を含んだ文字列を作成する
処理を情報処理装置に実行させるプログラム。 Identify characters that are not included in any element of the array as delimiters that indicate data delimiters,
Concatenating data stored in one or more elements of the array with a specified delimiter as a boundary,
A program that causes an information processing apparatus to execute processing for creating a character string that includes data concatenated with a delimiter as a boundary and includes the delimiter at a predetermined position.
特定した区切り文字に基づいて、前記文字列を0個以上のデータへ変換し、一個以上のデータを配列の一個以上の要素に格納し、
前記配列の一個以上の要素に格納されたデータを、データ集合体の一個以上のメンバに格納する
処理を情報処理装置に実行させるプログラム。 From the character string, based on the position of the character in the character string, specify a delimiter that indicates the data delimiter,
Based on the specified delimiter, the character string is converted into zero or more data, one or more data is stored in one or more elements of the array,
A program for causing an information processing apparatus to execute processing for storing data stored in one or more elements of the array in one or more members of a data aggregate.
前記第1情報処理装置は、
データ集合体に含まれる一個以上のメンバに格納されたデータを、予め定められている対応関係に従って、配列の一個以上の要素に格納する第1配列作成部と、
前記配列の一個以上の要素に格納されたデータ及びデータの区切りを示す区切り文字を含んだ文字列を作成する文字列作成部と、
該文字列作成部が作成した文字列を出力する出力部とを備え、
前記第2情報処理装置は、
前記データ集合体の一個以上のメンバと前記配列の一個以上の要素との間の前記対応関係を前記第1情報処理装置と共有しており、
前記出力部が出力した文字列を取得する取得部と、
該取得部で取得した文字列を、前記区切り文字に基づいて0個以上のデータへ変換し、一個以上のデータを配列の一個以上の要素に格納する第2配列作成部と、
前記配列の一個以上の要素に格納されたデータを、前記対応関係に従って、データ集合体に含まれる一個以上のメンバに格納するデータ集合体作成部とを備える
情報処理システム。 An information processing system in which a first information processing device and a second information processing device are connected via a communication network,
The first information processing apparatus
A first array creation unit that stores data stored in one or more members included in the data aggregate in one or more elements of the array in accordance with a predetermined correspondence;
A character string creation unit that creates a character string including data stored in one or more elements of the array and a delimiter indicating a delimiter of the data;
An output unit for outputting the character string created by the character string creating unit,
The second information processing apparatus
Sharing the correspondence between one or more members of the data aggregate and one or more elements of the array with the first information processing apparatus;
An acquisition unit for acquiring the character string output by the output unit;
A second array creating unit that converts the character string obtained by the obtaining unit into zero or more data based on the delimiter and stores one or more data in one or more elements of the array;
An information processing system comprising: a data aggregate creation unit that stores data stored in one or more elements of the array in one or more members included in a data aggregate according to the correspondence relationship.
前記データ集合体に第2のデータ集合体が含まれる場合に、該第2のデータ集合体に含まれる一個以上のメンバに格納されたデータを、第1の配列の一個以上の要素に格納し、
前記第1の配列の一個以上の要素に格納されたデータ及び第1の区切り文字を含んだ第1の文字列を作成し、
前記第2のデータ集合体以外のメンバ及び前記第1の文字列の少なくとも何れかを、第2の配列の一個以上の要素に格納し、
前記文字列作成部は、
前記第2の配列の一個以上の要素に格納されたデータ及び第2の区切り文字を含んだ第2の文字列を作成する
請求項5に記載の情報処理システム。 The first array creation unit includes:
When the data aggregate includes a second data aggregate, the data stored in one or more members included in the second data aggregate is stored in one or more elements of the first array. ,
Creating a first character string including data stored in one or more elements of the first array and a first delimiter;
Storing at least one of members other than the second data aggregate and the first character string in one or more elements of the second array;
The character string creating unit
The information processing system according to claim 5, wherein a second character string including data stored in one or more elements of the second array and a second delimiter is created.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016144646 | 2016-07-22 | ||
JP2016144646 | 2016-07-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018022472A true JP2018022472A (en) | 2018-02-08 |
JP6511598B2 JP6511598B2 (en) | 2019-05-15 |
Family
ID=61166165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017096262A Active JP6511598B2 (en) | 2016-07-22 | 2017-05-15 | Program and information processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6511598B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007114972A (en) * | 2005-10-19 | 2007-05-10 | Fujitsu Ltd | Data processing method of structured document, data processing program and data processor |
JP2007233630A (en) * | 2006-02-28 | 2007-09-13 | Fujitsu Ltd | Browser screen-display device, and program for the same |
JP2010262450A (en) * | 2009-05-01 | 2010-11-18 | Brother Ind Ltd | Display |
-
2017
- 2017-05-15 JP JP2017096262A patent/JP6511598B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007114972A (en) * | 2005-10-19 | 2007-05-10 | Fujitsu Ltd | Data processing method of structured document, data processing program and data processor |
JP2007233630A (en) * | 2006-02-28 | 2007-09-13 | Fujitsu Ltd | Browser screen-display device, and program for the same |
JP2010262450A (en) * | 2009-05-01 | 2010-11-18 | Brother Ind Ltd | Display |
Also Published As
Publication number | Publication date |
---|---|
JP6511598B2 (en) | 2019-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190188417A1 (en) | Data masking systems and methods | |
JP2020170551A (en) | Information processing device and information processing method | |
CN108304201A (en) | Object updating method, device and equipment | |
CN111427559B (en) | Method for realizing form customization service, method, device and system for generating form | |
US20120330598A1 (en) | Method, program, and system for generating test cases | |
JP5939123B2 (en) | Execution control program, execution control method, and information processing apparatus | |
CN105094924B (en) | The introduction method and device of image file | |
CN110532182B (en) | Automatic testing method and device for virtualization platform | |
JP2008541286A (en) | Method and apparatus for generating a parametric model related to a three-dimensional shape | |
Daverio et al. | Latfield2: A c++ library for classical lattice field theory | |
CN112085166A (en) | Convolutional neural network model accelerated training method and device, electronic equipment and storage medium | |
Ballamudi et al. | Getting Started Modern Web Development with Next. js: An Indispensable React Framework | |
KR20040090937A (en) | Modeling directed scale-free object relationships | |
WO2021220774A1 (en) | System for generating compound structure representation | |
CN107391528A (en) | Front end assemblies Dependency Specification searching method and equipment | |
JPWO2009113483A1 (en) | Access control system, access control method, and storage medium | |
CN104050207B (en) | Information processing unit and file management system | |
US20230068272A1 (en) | Information processing apparatus, information processing method, and storage medium for classifying object of interest | |
JP2018022472A (en) | Program and information processing system | |
Möller et al. | : A cross-platform programming framework for quantum-accelerated scientific computing | |
Sánchez-Expósito et al. | Web services as building blocks for science gateways in astrophysics | |
US20200089475A1 (en) | Optimization problem arithmetic method and optimization problem arithmetic apparatus | |
JP5428316B2 (en) | Identifier shortening display program, identifier shortening display device, and identifier shortening display method | |
Robertsén et al. | Designing a graphics processing unit accelerated petaflop capable lattice Boltzmann solver: Read aligned data layouts and asynchronous communication | |
JP6971271B2 (en) | Information processing equipment, information processing methods and information processing programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180807 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180925 |
|
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: 20190312 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6511598 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |