JP2009140063A - File management module, printing device, file management method, file management program - Google Patents
File management module, printing device, file management method, file management program Download PDFInfo
- Publication number
- JP2009140063A JP2009140063A JP2007313569A JP2007313569A JP2009140063A JP 2009140063 A JP2009140063 A JP 2009140063A JP 2007313569 A JP2007313569 A JP 2007313569A JP 2007313569 A JP2007313569 A JP 2007313569A JP 2009140063 A JP2009140063 A JP 2009140063A
- Authority
- JP
- Japan
- Prior art keywords
- file
- unicode
- file name
- string
- storage medium
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、クライアント端末からの要求に応じて、ファイルシステムを介してファイル読み出し/書き込みを行うファイル管理技術に関する。 The present invention relates to a file management technique for reading / writing a file via a file system in response to a request from a client terminal.
従来、メモリカードやハードディスク等の記憶媒体におけるファイル管理は、ローカルコード(SJISなど)を用いてファイル名(ショートファイル名)を記述するFATファイルシステムによって行われる場合が多い。FATファイルシステムを拡張したものとして、ショートファイル名に加えて、オプションとしてロングファイル名を設定することができるVFAT(Virtual FAT)ファイルシステムも存在する。ロングファイル名は、ユニコードにて記述され、255文字までの長さが許される一方、ショートファイル名は、ローカルコードにて記述され、いわゆる8.3形式(8文字+拡張子3文字)に限定される。 Conventionally, file management in a storage medium such as a memory card or a hard disk is often performed by a FAT file system that describes a file name (short file name) using a local code (SJIS or the like). As an extension of the FAT file system, there is a VFAT (Virtual FAT) file system that can set a long file name as an option in addition to a short file name. Long file names are described in Unicode and up to 255 characters are allowed, while short file names are described in local code and limited to the so-called 8.3 format (8 characters + 3 extension characters). Is done.
クライアント端末から、ネットワークを介してプリンタ等の機器のメモリスロットに挿入されたメモリカード内のファイルを読み出したり、メモリカードにファイルを書き込んだりする状況を考える。 Consider a situation in which a file in a memory card inserted into a memory slot of a device such as a printer is read from a client terminal or written to a memory card via a network.
この場合、クライアント端末とプリンタ等との間の通信プロトコルにおいて、ユニコードで記述したファイル名を用いてファイルを指定することが規定されている一方、メモリカード内のファイルがFATなどのローカルコードでショートファイル名を記述するファイルシステムによって管理されている場合、プリンタ等では次のようなコード変換が必要となる。 In this case, the communication protocol between the client terminal and the printer stipulates that the file is specified using a file name described in Unicode, while the file in the memory card is short-circuited by a local code such as FAT. When managed by a file system that describes file names, a printer or the like needs the following code conversion.
すなわち、読み出し対象を選択するためのファイル情報をクライアント端末に提供するにあたり、メモリカード内のファイルのショートファイル名をユニコードで記述されたものに変換して、ファイル情報を作成する必要がある。 That is, when providing file information for selecting a read target to the client terminal, it is necessary to create a file information by converting the short file name of the file in the memory card into that described in Unicode.
また、クライアント端末がユニコードで記述されたショートファイル名を指定してファイル読み出しを要求する可能性があるので、指定されたファイル名に関して、メモリカード内のファイルのロングファイル名と比較するだけでなく、メモリカード内のファイルのショートファイル名をユニコードで記述したものに変換して比較する(又は、指定されたファイル名をローカルコードで記述したものに変換して、メモリカード内のファイルのショートファイル名と比較する)必要がある。 In addition, there is a possibility that the client terminal may request a file read by specifying a short file name described in Unicode. In addition to comparing the specified file name with the long file name of the file in the memory card, , Convert the short file name of the file in the memory card to the one written in Unicode and compare (or convert the specified file name to the one written in the local code and short file of the file in the memory card (Compared with name).
更に、クライアント端末からの書き込み要求で指定されるファイル名はユニコードで記述されることから、指定されたファイル名をロングファイル名として用いるとともに、該ファイル名をローカルコードに変換して(必要に応じて省略して)ショートファイル名を作成し、メモリカードに書き込む必要がある。 Furthermore, since the file name specified by the write request from the client terminal is described in Unicode, the specified file name is used as a long file name, and the file name is converted into a local code (if necessary) It is necessary to create a short file name and write it to the memory card.
しかし、プリンタ等においてこのようなコード変換を行う場合、以下のような点が問題となる。 However, when such code conversion is performed in a printer or the like, the following points are problematic.
すなわち、プリンタ等に対して、メモリカード内のファイルが採用するローカルコードのコード体系を予め指定しておく(換言すれば、コード変換を行う際に使用する変換テーブルを予め指定しておく)必要がある。メモリカード内に異なるコード体系を採用したファイルが複数存在する場合、ファイルごとにこのような指定を行うのは煩雑であり、またメモリカード内のファイルが他者によって作成されたものである場合、そもそもどのようなコード体系を採用して作成されたファイルなのかを判別することは難しい。 That is, it is necessary to specify in advance the code system of the local code adopted by the file in the memory card for the printer or the like (in other words, specify the conversion table used for code conversion in advance). There is. If there are multiple files that use different code systems in the memory card, it is cumbersome to make such designation for each file, and if the file in the memory card was created by someone else, In the first place, it is difficult to determine what kind of code system is used to create a file.
また、複数のローカルコードのコード体系に対応できるようにするためには、各コード体系ごとに変換テーブルが必要となるため、そのためのメモリ資源も多量に必要となってしまうという問題も生じる。また、新しいコード体系に対応させるためには、対応する変換テーブルをプリンタ等に導入するといったローカライズ作業が必要となり、このような作業はユーザ等に大きな負担を与えることになる。 Also, in order to be able to deal with a plurality of local code systems, a conversion table is required for each code system, which causes a problem that a large amount of memory resources are required. Further, in order to correspond to the new code system, localization work such as introducing a corresponding conversion table into a printer or the like is necessary, and this work places a heavy burden on the user or the like.
そこで、本発明は、ローカルコードのコード体系ごとに変換テーブルを有する必要を無くし、ローカルコードのコード体系を予め指定せずともファイルシステムを介してファイルの読み出し/書き込みを行うことができる新しい枠組みを提供することを目的とする。 Therefore, the present invention eliminates the need for having a conversion table for each local code system, and provides a new framework that can read / write files via the file system without specifying the local code system in advance. The purpose is to provide.
本発明のファイル管理モジュールは、クライアント端末からのファイル読み出し要求に応じて、ファイルシステムを介して記憶媒体からファイルを読み出してクライアント端末に送信し、クライアント端末からのファイル書き込み要求に応じて、ファイルシステムを介して記憶媒体にファイルを書き込むファイル管理モジュールであって、1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てた1バイトコード変換テーブルを記憶する手段と、前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコード変換テーブルを適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記指定された変換後ファイル名のユニコード列の各ユニコードに前記1バイトコード変換テーブルを適用して、前記変換後ファイル名のユニコード列をローカルコード列に変換し、前記変換したローカルコード列を前記記憶媒体に格納される各ファイルのファイル名のローカルコード列と比較し、ローカルコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定し、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成し、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成し、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む手段と、を備えることを特徴とする。 The file management module of the present invention reads a file from a storage medium via a file system in response to a file read request from the client terminal, transmits the file to the client terminal, and responds to a file write request from the client terminal. A file management module for writing a file to a storage medium via a storage unit, storing a 1-byte code conversion table in which any Unicode is assigned to each 1-byte code 00 to FF without duplication; For each stored file, obtain a local code string of the file name, and apply the 1-byte code conversion table to each 1-byte code when the obtained local code string is regarded as a 1-byte code string. The acquired local code string is A file name conversion unit that converts the file name into a code string and sets the file name after conversion of the file by the converted Unicode string; and receives a request for file information of each file stored in the storage medium from the client terminal In this case, for each file stored in the storage medium, means for transmitting file information including the converted file name set by the file name converting means to the client terminal, and the converted file name from the client terminal Is applied to each Unicode string of the specified converted file name Unicode string, and the converted file name Unicode string is converted to a local code string. And converting the converted local code string into the storage medium. And a means for reading a file having a matching local code string from the storage medium via the file system and transmitting it to the client terminal, and a unicode for one character. Means for storing a Unicode hash function that outputs a 1-byte code in a range of 00 to 7F assigned to an ASCII character as an input, and a write request for a file X specifying a file name Y described in Unicode from the client terminal If accepted, it is determined whether or not non-ASCII characters are included in the file name Y. If not included, a file name composed of ASCII characters is created and included based on the file name Y. In the Unicode string of the file name Y By applying a de-hash function, the Unicode string of the file name Y is converted into a 1-byte code string in the range of 0 to 7F, and a file name composed of ASCII characters is converted based on the converted 1-byte code string. Means for creating and writing the file X to the storage medium via the file system using the created file name.
かかる構成によれば、1バイトコード変換テーブルは、ローカルコードに依存しない共通変換テーブルとして機能するため、ファイル読み出しのためにローカルコードのコード体系ごとに変換テーブルを有する必要はなく、ローカルコードのコード体系を予め指定せずとも、ファイルシステムを介してファイルの読み出しを行うことができる。 According to such a configuration, the 1-byte code conversion table functions as a common conversion table that does not depend on the local code. Therefore, it is not necessary to have a conversion table for each local code system for reading a file. Even if the system is not designated in advance, the file can be read through the file system.
またかかる構成によれば、ユニコードハッシュ関数は、ローカルコードに共通するコードを出力するハッシュ関数として機能するため、ファイル書き込みのためにローカルコードのコード体系ごとに変換テーブルを有する必要はなく、ローカルコードのコード体系を予め指定せずとも、ファイルシステムを介してファイルの書き込みを行うことができる。また、かかる構成のもと書き込まれたファイルXは、そのショートファイル名がASCII文字のみから構成され、従って、どのようなローカルコードのコード体系を採用するファイルシステムにおいても、同一の文字列として正しく読み出すことができる。 Further, according to such a configuration, the Unicode hash function functions as a hash function that outputs a code common to the local code, so there is no need to have a conversion table for each code system of the local code for writing the file. The file system can be written through the file system without specifying the code system in advance. In addition, the file X written under such a configuration has a short file name composed only of ASCII characters. Therefore, in any file system employing any local code system, the file X is correctly written as the same character string. Can be read.
また本発明のファイル管理モジュールは、クライアント端末からのファイル読み出し要求に応じて、ファイルシステムを介して記憶媒体からファイルを読み出してクライアント端末に送信し、クライアント端末からのファイル書き込み要求に応じて、ファイルシステムを介して記憶媒体にファイルを書き込むファイル管理モジュールであって、1バイトコード00〜FFを入力とし、1文字分のユニコードを出力する1バイトコードハッシュ関数を記憶する手段と、前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコードハッシュ関数を適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名のユニコード列を前記指定された変換後ファイル名のユニコード列と比較し、ユニコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定し、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成し、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成し、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む手段と、を備えることを特徴とする。 The file management module of the present invention reads a file from a storage medium via a file system in response to a file read request from the client terminal, transmits the file to the client terminal, and responds to a file write request from the client terminal. A file management module for writing a file to a storage medium via a system, a means for storing a 1-byte code hash function that inputs 1-byte code 00 to FF and outputs a single-character unicode, and the storage medium For each stored file, obtain a local code string of the file name, apply the 1-byte code hash function to each 1-byte code when the obtained local code string is regarded as a 1-byte code string, The acquired local code string is converted to a Unicode string. When the file name conversion means for setting the file name after conversion of the file by the converted Unicode string and the file information request of each file stored in the storage medium from the client terminal are received, the storage For each file stored in the medium, means for transmitting file information including the converted file name set by the file name converting means to the client terminal, and a file designating the converted file name from the client terminal When a read request is received, for each file stored in the storage medium, the converted file name Unicode string set by the file name conversion means is compared with the specified converted file name Unicode string, Files with matching Unicode strings are stored in the file system. A means for reading out from the storage medium via the network and transmitting it to the client terminal, and storing a Unicode hash function that outputs a 1-byte code in the range of 0 to 7F assigned to an ASCII character, with the Unicode for one character as an input When a file X write request specifying the file name Y described in Unicode is received from the client terminal and the client terminal, it is determined whether or not the file name Y includes a non-ASCII character. In this case, a file name composed of ASCII characters is created based on the file name Y. If included, the Unicode hash function is applied to each Unicode of the Unicode string of the file name Y, and the file name Convert the Unicode string of Y to a 1-byte code string in the range of 0 to 7F, and the conversion Means for creating a file name composed of ASCII characters based on the one-byte code sequence and writing the file X to the storage medium via the file system using the created file name. It is characterized by.
好適には、前記1バイトコード変換テーブルは、1バイトコード00〜7Fそれぞれに対して、ASCII文字のユニコードを重複なく割り当てて構成されていることを特徴とする。 Preferably, the 1-byte code conversion table is configured by assigning ASCII character Unicodes to each of the 1-byte codes 00 to 7F without duplication.
また好適には、前記1バイトコードハッシュ関数は、1バイトコード00〜7Fが入力された場合、ASCII文字のユニコードを出力することを特徴とする。 Preferably, the 1-byte code hash function outputs Unicode of ASCII characters when 1-byte codes 00 to 7F are input.
また本発明のファイル管理モジュールは、クライアント端末からのファイル読み出し要求に応じて、ファイルシステムを介して記憶媒体からファイルを読み出してクライアント端末に送信するファイル管理モジュールであって、1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てた1バイトコード変換テーブルを記憶する手段と、前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコード変換テーブルを適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記指定された変換後ファイル名のユニコード列の各ユニコードに前記1バイトコード変換テーブルを適用して、前記変換後ファイル名のユニコード列をローカルコード列に変換し、前記変換したローカルコード列を前記記憶媒体に格納される各ファイルのファイル名のローカルコード列と比較し、ローカルコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、を備えることを特徴とする。 The file management module of the present invention is a file management module that reads a file from a storage medium via a file system and transmits it to the client terminal in response to a file read request from the client terminal. Means for storing a 1-byte code conversion table in which any Unicode code is assigned without duplication; a local code string of a file name is acquired for each file stored in the storage medium; and the acquired local code The 1-byte code conversion table is applied to each 1-byte code when the sequence is regarded as a 1-byte code sequence, the acquired local code sequence is converted to a Unicode sequence, and the converted Unicode sequence File name conversion to set the file name after conversion And the file name after conversion set by the file name conversion means for each file stored in the storage medium when a request for file information of each file stored in the storage medium is received from the client terminal. When receiving a file read request designating the converted file name from the client terminal and means for transmitting the file information including the file information to the client terminal, each Unicode of the Unicode string of the specified converted file name Applying the one-byte code conversion table to convert the Unicode string of the converted file name into a local code string, and converting the converted local code string into a local code string of the file name of each file stored in the storage medium And the file whose local code string matches is Via the filesystem is read from the storage medium, characterized in that it comprises, means for transmitting to said client terminal.
また本発明のファイル管理モジュールは、クライアント端末からのファイル読み出し要求に応じて、ファイルシステムを介して記憶媒体からファイルを読み出してクライアント端末に送信するファイル管理モジュールであって、1バイトコード00〜FFを入力とし、1文字分のユニコードを出力する1バイトコードハッシュ関数を記憶する手段と、前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコードハッシュ関数を適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名のユニコード列を前記指定された変換後ファイル名のユニコード列と比較し、ユニコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、を備えることを特徴とする。 The file management module of the present invention is a file management module that reads a file from a storage medium via a file system and transmits it to the client terminal in response to a file read request from the client terminal. And a means for storing a one-byte code hash function that outputs a unicode for one character, a local code string of a file name is obtained for each file stored in the storage medium, and the obtained local code string Is converted to a Unicode string by applying the 1-byte code hash function to each 1-byte code when the file is regarded as a 1-byte code string, and the file is converted by the converted Unicode string. A file name conversion means for setting a subsequent file name, and When receiving a request for file information of each file stored in the storage medium from an client terminal, the file information including the converted file name set by the file name conversion means for each file stored in the storage medium Is sent to the client terminal and the file name conversion means sets each file stored in the storage medium when receiving a file read request designating the converted file name from the client terminal. Means for comparing the Unicode string of the converted file name with the specified Unicode string of the converted file name, reading out the file having the matched Unicode string from the storage medium via the file system, and transmitting the file to the client terminal And.
また本発明のファイル管理モジュールは、クライアント端末からのファイル書き込み要求に応じて、ファイルシステムを介して記憶媒体にファイルを書き込むファイル管理モジュールであって、1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定し、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成し、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成し、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む手段と、を備えることを特徴とする。 The file management module according to the present invention is a file management module that writes a file to a storage medium via a file system in response to a file write request from a client terminal. Means for storing a Unicode hash function for outputting a 1-byte code in the range of 0 to 7F to be allocated; and when a write request for a file X specifying a file name Y described in Unicode is received from the client terminal, the file It is determined whether or not a non-ASCII character is included in the name Y. If not included, a file name composed of ASCII characters is created based on the file name Y, and if included, the file name is included. The Unicode hash for each Unicode string in Y Apply a number to convert the Unicode string of the file name Y into a 1-byte code string in the range of 0 to 7F, and create a file name composed of ASCII characters based on the converted 1-byte code string And means for writing the file X to the storage medium via the file system using the created file name.
本発明の印刷装置は、本発明のファイル管理モジュールと、前記ファイルシステムと、前記ファイルシステムを介して前記記憶媒体にアクセスするためのインタフェースと、前記クライアント端末と通信するためのインタフェースとを備える。 The printing apparatus of the present invention includes the file management module of the present invention, the file system, an interface for accessing the storage medium via the file system, and an interface for communicating with the client terminal.
本発明のファイル管理方法は、クライアント端末からのファイル読み出し要求に応じて、ファイルシステムを介して記憶媒体からファイルを読み出してクライアント端末に送信するファイル読み出し工程と、クライアント端末からのファイル書き込み要求に応じて、ファイルシステムを介して記憶媒体にファイルを書き込むファイル書き込み工程とを含むファイル管理方法であって、前記ファイル読み出し工程が、前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得する工程と、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに、1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てた1バイトコード変換テーブルを適用して、前記取得したローカルコード列をユニコード列に変換する工程と、前記変換したユニコード列により該ファイルの変換後ファイル名を設定する工程と、前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する工程と、前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記指定された変換後ファイル名のユニコード列の各ユニコードに前記1バイトコード変換テーブルを適用して、前記変換後ファイル名のユニコード列をローカルコード列に変換する工程と、前記変換したローカルコード列を前記記憶媒体に格納される各ファイルのファイル名のローカルコード列と比較する工程と、前記比較の結果、ローカルコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する工程と、1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、を備え、前記ファイル書き込み工程が、前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定する工程と、前記判定の結果、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成する工程と、前記判定の結果、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成する工程と、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む工程と、を備えることを特徴とする。 According to the file management method of the present invention, in response to a file read request from the client terminal, a file read step of reading the file from the storage medium via the file system and transmitting it to the client terminal, and in response to the file write request from the client terminal A file writing step of writing a file to a storage medium via a file system, wherein the file reading step uses a local code string of a file name for each file stored in the storage medium. 1 byte code in which any Unicode is assigned to each 1 byte code 00 to FF without duplication to each 1 byte code when the acquired local code string is regarded as a 1 byte code string Apply the conversion table to A step of converting the obtained local code sequence into a Unicode sequence, a step of setting a file name after conversion of the file by the converted Unicode sequence, and file information of each file stored in the storage medium from the client terminal If the request is received, for each file stored in the storage medium, the file information including the converted file name set by the file name conversion means is transmitted to the client terminal; When a file read request specifying a converted file name is received, the 1-byte code conversion table is applied to each Unicode string of the specified converted file name, and the Unicode string of the converted file name is A step of converting into a local code string and the converted code A step of comparing a calcode string with a local code string of a file name of each file stored in the storage medium, and a file whose local code string matches as a result of the comparison is read from the storage medium via the file system And a means for storing a unicode hash function that receives a unicode for one character as input and outputs a 1-byte code in a range of 00 to 7F assigned to an ASCII character, A step of determining whether or not a non-ASCII character is included in the file name Y when the write step receives a write request for the file X specifying the file name Y described in Unicode from the client terminal; As a result of the determination, if it is not included, AS is determined based on the file name Y. A step of creating a file name composed of CII characters, and, if included as a result of the determination, the Unicode hash function is applied to each Unicode of the Unicode string of the file name Y, and the Unicode of the file name Y is applied. Converting the sequence into a 1-byte code sequence in the range of 0 to 7F, creating a file name composed of ASCII characters based on the converted 1-byte code sequence, and using the created file name And writing the file X to the storage medium via the file system.
本発明のファイル管理方法は、印刷装置や情報処理装置において実施することができるが、そのためのプログラムの全体又は一部は、CD−ROM、磁気ディスク、半導体メモリ及び通信ネットワークなどの各種の媒体を通じてインストールまたはロードすることができる。 The file management method of the present invention can be implemented in a printing apparatus or information processing apparatus, and the whole or a part of the program therefor is through various media such as a CD-ROM, a magnetic disk, a semiconductor memory, and a communication network. Can be installed or loaded.
なお、本発明において、手段とは、単に物理的手段を意味するものではなく、その手段が有する機能をソフトウェアによって実現する場合も含む。また、1つの手段や装置が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の手段や装置の機能が1つの物理的手段や装置により実現されても良い。 In the present invention, the term “means” does not simply mean a physical means, but includes a case where the functions of the means are realized by software. Also, the functions of one means or device may be realized by two or more physical means or devices, or the functions of two or more means or devices may be realized by one physical means or device.
以上、本発明によれば、ローカルコードのコード体系ごとに変換テーブルを有する必要が無くなり、ローカルコードのコード体系を予め指定せずともファイルシステムを介してファイルの読み出し/書き込みを行うことが可能となる。 As described above, according to the present invention, it is not necessary to have a conversion table for each local code system, and it is possible to read / write a file through the file system without specifying the local code system in advance. Become.
図面を参照して本発明の実施形態を説明する。 Embodiments of the present invention will be described with reference to the drawings.
図1は、本実施形態に係るプリンタ1の外観を示す図である。図1(a)は、本実施形態に係るプリンタ1を正面方向からみた場合の斜視図であり、図1(b)は、本実施形態に係るプリンタ1の概略背面図である。 FIG. 1 is a diagram illustrating an appearance of a printer 1 according to the present embodiment. FIG. 1A is a perspective view of the printer 1 according to the present embodiment as viewed from the front, and FIG. 1B is a schematic rear view of the printer 1 according to the present embodiment.
図1(a)に示すように、プリンタ1の本体2の上面右側には、操作パネル3が設けられている。ユーザは、この操作パネル3を操作することで、印刷指示等の各種指示をプリンタに与えることができる。プリンタ1の本体2の背面側には、用紙供給装置4が設けられ、シートフィーダー5にセットされた用紙あるいはロール紙支持部6にセットされたロール紙が本体2内部に給紙される。プリンタ1の本体2の中央に設けられたカバー7の下方には、印刷機構(図示せず)が搭載され、印刷機構が印刷処理を実行すると、印刷後の用紙8が本体2の前側下部の排紙口9から排出される。
As shown in FIG. 1A, an operation panel 3 is provided on the upper right side of the main body 2 of the printer 1. The user can give various instructions such as a print instruction to the printer by operating the operation panel 3. A paper supply device 4 is provided on the back side of the main body 2 of the printer 1, and the paper set in the sheet feeder 5 or the roll paper set in the roll paper support unit 6 is fed into the main body 2. A printing mechanism (not shown) is mounted below the cover 7 provided in the center of the main body 2 of the printer 1, and when the printing mechanism executes a printing process, the printed
操作パネル3は、設定画面10を有する表示装置11と、複数の操作ボタン13a〜13cからなる操作手段としての操作部12とを備えており、ユーザインタフェースを構成している。設定画面10は、例えば、用紙種類、用紙サイズ、レイアウト、写真選択、印刷枚数等を設定するための画面を表示する。操作部12は、プリンタ1に電源を投入するための電源スイッチ13aと、エラー発生時に押されるメンテナンススイッチ13bと、ロール紙を操作するときに押されるロール紙スイッチ13cとから構成されている。
The operation panel 3 includes a
また、プリンタ1の本体2の正面右側にはスロット17〜19が設けられ、これらは記憶媒体14〜16(コンパクトフラッシュ(登録商標)、スマートメディア、メモリースティックなど)にアクセスするためのハードウェアインタフェースを構成している。また、各スロット17〜19の横にはそれぞれLED17a〜19aが配置され、有効なスロット(挿入された記憶媒体へのアクセスが許可されているスロット)のLEDが点灯するように構成されている。
Also,
プリンタ1の本体2の上部には、各記憶媒体14〜16から読み込んだ画像を表示する表示装置(モニタ)20が取り付けられている。モニタ20のモニタ画面21は、画像確認やプリントレイアウトの確認を行うための画面を表示する。
A display device (monitor) 20 for displaying images read from the
一方、図1(b)に示すように、プリンタ1の本体2の背面下側にはポート22、25が設けられ、これらは外部の機器と通信する(接続する)ためのハードウェアインタフェースを構成している。
On the other hand, as shown in FIG. 1B,
ポート22は、プリンタ1がケーブル27を介してと外部記憶装置23(例えばMO)と通信するためのものである。ユーザは、記憶媒体(例えばMOディスク)24を外部記憶装置23に挿入し、操作パネル10を操作することにより、記憶媒体24に記憶された印刷対象データをダイレクトに印刷する指示などをプリンタ1に与えることができる。
The
ポート25は、プリンタ1が通信ネットワーク28を介してクライアント端末26と通信するためのものである。クライアント端末26は、ポート25を介して、各スロット17〜19に挿入された記憶媒体14〜16や外部記憶装置23に挿入された記憶媒体24にアクセスする。ユーザは、クライアント端末26に対して、記憶媒体14〜16及び24からの所定のファイルの読み出し指示または記憶媒体14〜16及び24への所定のファイルの書き込み指示を与えることができる。
The
図2は、本実施形態に係るプリンタの構成を示すブロック図である。 FIG. 2 is a block diagram showing the configuration of the printer according to this embodiment.
図2(a)は、プリンタ1の主要なハードウェア構成を示す。同図に示すように、プリンタ1は、通常のプリンタ装置と同様のハードウェア構成を備える。 FIG. 2A shows the main hardware configuration of the printer 1. As shown in the figure, the printer 1 has the same hardware configuration as a normal printer device.
例えば、プリンタ1は、用紙をプリンタ内に供給する給紙機構、印字を行う印刷エンジン、及び用紙をプリンタ機外に排出する排紙機構等のハードウェアにより構成される印刷処理部40を備える。印刷エンジンは、通常、紙送機構、キャリッジ機構、印刷ヘッドなどを含んで構成され、インクジェットプリンタや熱転写プリンタのように1文字単位で印刷するシリアルプリンタ、1行単位で印刷するラインプリンタ、ページ単位で印刷するページプリンタ等に対応する各種印刷エンジンを用いることができる。
For example, the printer 1 includes a
また例えば、プリンタ1は、CPU、ROM、RAM、ユーザインタフェース、ハードウェアインタフェース等のハードウェアにより構成される情報処理部41を備える。情報処理部41は、印刷処理部40を制御して印刷処理を実行させる。
For example, the printer 1 includes an information processing unit 41 configured by hardware such as a CPU, a ROM, a RAM, a user interface, and a hardware interface. The information processing unit 41 controls the
図2(b)は、プリンタ1の主要な機能構成を示す。 FIG. 2B shows the main functional configuration of the printer 1.
スロット制御部30〜32は、それぞれ対応するスロット17〜19に記憶媒体が挿入されたことを検知すると、初期化処理を実行して各記憶媒体へのアクセスを可能な状態にするとともに、その旨をファイルシステム36に通知する。
When the
外部記憶装置制御部33は、外部記憶装置23に記憶媒体が挿入されたことをポート22を介して検知すると、初期化処理を実行して記憶媒体へのアクセスを可能な状態にするとともに、その旨をファイルシステム36に通知する。
When the external storage
アクセス制御部34は、クライアント端末26からのファイルシステム36へのアクセス要求をポート25を介して受け付けると、その旨をファイル管理モジュール35に通知する。ここで、本実施形態では、クライアント端末26とプリンタ1との間の通信プロトコルにおいて、ユニコードで記述したファイル名を用いてファイルを指定することが規定されているものとする。従って、アクセス制御部34が受け付けるアクセス要求にファイル名が含まれる場合、該ファイル名はユニコードで記述されているものとする。
When the
ファイル管理モジュール35は、アクセス制御部34からのアクセス要求に応じて、該アクセス要求で指定されたファイル名の変換を行い、変換後のファイル名を用いてファイルシステム36を介して各記憶媒体からファイルを読み出す/各記憶媒体にファイルを書き込む。具体的には、ファイル管理モジュール35は、図3に示すように、1バイトコード変換テーブル100、ユニコードハッシュ関数101などを記憶する記憶部、ファイル名変換機能、ファイル情報送信機能、ファイル読出機能、ファイル書込機能などを実行する機能部を備えている。図3では、機能部の各機能を機能手段として図示している。なおファイル管理モジュール35の動作については、後に詳述する。
In response to the access request from the
ファイルシステム36は、例えばFATのような、ローカルコードでファイル名(ショートファイル名)を記述する従来のファイルシステムであり、ファイル管理モジュール35や印刷制御部37にファイルアクセス手段を提供するとともに、各記憶媒体のファイル情報を管理する。
The
印刷制御部37は、ユーザの指示に従って、ファイルシステム36を介して各記憶媒体に記憶された印刷対象データを取得し、該印刷対象データを印刷するための印刷要求を印刷処理部40に通知する。また、印刷制御部37は、印刷処理部40からの情報に従って、プリンタ1が印刷中か否か、印刷エラーが発生しているか否かといったプリンタ1の状態を管理する。
The
これらの各手段は、情報処理部41において、ROM又はRAMに格納されるアプリケーションプログラムをCPUが実行することにより、機能的に実現される。これらのアプリケーションプログラムは、例えばCD−ROM、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークを介して、情報処理部41にインストールまたはロードすることができる構成となっていることが望ましい。 Each of these means is functionally realized in the information processing unit 41 when the CPU executes an application program stored in the ROM or RAM. These application programs may be configured to be installed or loaded into the information processing unit 41 through various recording media such as a CD-ROM, a magnetic disk, and a semiconductor memory, or via a communication network. desirable.
以下、図4、図5に示すフローチャート等を参照し、ファイルシステム36を介して記憶媒体14に格納されるファイルにアクセスする場合を例に、プリンタ1におけるファイルアクセス処理(ファイル読み出し処理、ファイル書き込み処理)について説明する。なお、本明細書において、フローチャート等に示す各工程(符号が付与されていない部分的な工程を含む)は処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。また、する。
Hereinafter, with reference to the flowcharts shown in FIGS. 4 and 5, file access processing (file read processing, file writing) in the printer 1, taking as an example the case of accessing a file stored in the
(ファイル読み出し処理:図4)
クライアント端末26は、記憶媒体14からファイルを読み出す場合、ユーザの指示に基づき、まず記憶媒体14に格納されたファイルのファイル情報要求を作成し、プリンタ1に送信する。
(File read processing: FIG. 4)
When reading a file from the
アクセス制御部34は、クライアント端末26から記憶媒体14に関するファイル情報の要求を受信した場合、該要求をファイル管理モジュール35に通知する(S100)。
When receiving a request for file information related to the
ファイル管理モジュール35は、ファイル情報要求を受け付けた場合、ファイルシステム36を介して、記憶媒体14に格納される各ファイルについて、ショートファイル名のローカルコード列を取得する(S101)。
When receiving the file information request, the
次に、ファイル管理モジュール35は、記憶媒体14に格納される各ファイルについて、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに1バイトコード変換テーブル100を適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ショートファイル名を設定する(S102)。
Next, for each file stored in the
1バイトコード変換テーブル100は、1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てたテーブルである。1バイトコード変換テーブル100において、1バイトコード00〜FF全てに対して重複なくユニコード(制御文字以外の一般の文字のユニコード)が割り当てられていれば、各1バイトコードにどのユニコードを割り当てるかは設計に応じて定めることができる。従って、1バイトコード変換テーブル100は、変換しようとしているショートファイル名が採用するローカルコードの変換テーブルである必要はない(換言すれば、1バイトコード変換テーブル100は、ローカルコードに依存しない共通変換テーブルとして機能する)。 The 1-byte code conversion table 100 is a table in which any Unicode is assigned to each of the 1-byte codes 00 to FF without duplication. In the 1-byte code conversion table 100, if Unicodes (unicodes of general characters other than control characters) are assigned to all 1-byte codes 00 to FF without duplication, which Unicode is assigned to each 1-byte code? It can be determined according to the design. Therefore, the 1-byte code conversion table 100 does not have to be a local code conversion table adopted by the short file name to be converted (in other words, the 1-byte code conversion table 100 is a common conversion independent of the local code). Function as a table).
ただし、1バイトコード00〜7Fそれぞれに対して、ASCII文字のユニコードを重複なく割り当てることが望ましい。このように1バイトコード変換テーブル100を設定することで、後述するように、変換後ショートファイル名をASCII文字のみで構成することができ、ファイル書き込み時に作成するショートファイル名と共通性を持たせることができる。 However, it is desirable to assign ASCII character Unicode to each of the 1-byte codes 00 to 7F without duplication. By setting the 1-byte code conversion table 100 in this way, the short file name after conversion can be composed of only ASCII characters, as will be described later, and has a commonality with the short file name created when writing the file. be able to.
図6に1バイトコード変換テーブル100の例を概念的に示す。1バイトの上位4ビットが行に、下位4ビットが列に割り当てられており、テーブル内の各要素には、上段にユニコードが表す文字が、下段にユニコードが示されている。例えばファイルXのショートファイル名が「明細書」であり、ローカルコードがSJISである場合、そのローカルコード列は「96BE:8DD7:8F91」となる。この場合、図6に示す1バイトコード変換テーブル100を適用すると、ファイルXの変換後ショートファイル名のユニコード列は「00D6:00FE:00CD:0117:00CF:00D1」となる。 FIG. 6 conceptually shows an example of the 1-byte code conversion table 100. The upper 4 bits of 1 byte are assigned to rows, and the lower 4 bits are assigned to columns. In each element in the table, characters represented by Unicode are shown in the upper row, and Unicode is shown in the lower row. For example, when the short file name of the file X is “specification” and the local code is SJIS, the local code string is “96BE: 8DD7: 8F91”. In this case, when the 1-byte code conversion table 100 shown in FIG. 6 is applied, the Unicode string of the short file name after the conversion of the file X becomes “00D6: 00FE: 00CD: 0117: 0CF: 00D1”.
かかる例からもわかるように、1バイトコード変換テーブル100を適用してファイル名を変換した場合、変換前後でファイル名の文字は一致しない可能性がある。しかし、1バイトコード変換テーブル100は、1バイトコード00〜FF全てに対してユニコードが割り当てられているため、ユニコードが割り当てられていないローカルコードが存在する可能性のある各ローカルコードごとの変換テーブルを適用した場合とは異なり、必ずユニコードで記述された変換後ショートファイル名を設定することができる。 As can be seen from this example, when the file name is converted by applying the 1-byte code conversion table 100, the characters of the file name may not match before and after the conversion. However, since the 1-byte code conversion table 100 has Unicode assigned to all the 1-byte codes 00 to FF, there is a possibility that a local code to which no Unicode is assigned may exist. Unlike the case where is applied, the short file name after conversion written in Unicode can always be set.
次に、ファイル管理モジュール35は、記憶媒体14に格納される各ファイルについて前記設定した変換後ショートファイル名を含むファイル情報を作成し、クライアント端末26に送信する(S103)。ファイル情報は、ロングファイル名が設定されているファイルについては、ロングファイル名のユニコード列を含んでいてもよい。また、ファイルサイズや作成日時などの情報を含んでいてもよい。
Next, the
クライアント端末26では、かかるファイル情報を受信した場合、該ファイル情報に基づき、変換後ショートファイル名等の一覧リストを表示部に表示する。ユーザは、かかる一覧リストを参照し、ファイル読み出しを指示することができる。クライアント端末26では、ユーザからファイル読み出しの指示を受け付けた場合、指示されたファイルを変換後ショートファイル名等で指定したファイル読み出し要求を作成し、プリンタ1に送信する。
When the file information is received, the
ファイル管理モジュール35は、クライアント端末26からファイル読み出し要求を受け付けた場合、まず前記ファイル読み出し要求において指定されたファイル名と、記憶媒体14に格納される各ファイルのロングファイル名(設定されている場合)とを比較する(S104)。
When the
ロングファイル名が一致するファイルがある場合、該ファイルをファイルシステム36を介して記憶媒体14から読み出して(S105)、クライアント端末26に送信する(S106)。
If there is a file whose long file name matches, the file is read from the
一方、ロングファイル名が一致するファイルが無い場合、ファイル管理モジュール35は、前記指定されたファイル名のユニコード列を取得し、前記取得したユニコード列の各ユニコードに1バイトコード変換テーブル100を逆引きに(すなわち、ユニコード列から1バイトコードを得るように)適用して、前記指定されたファイル名のユニコード列をローカルコード列に変換する(S107)。
On the other hand, if there is no file with the long file name matching, the
かかる変換ができた場合、ファイル管理モジュール35は、前記指定されたファイル名が変換後ショートファイル名であると判断する。この場合、ファイルシステム36を介して、記憶媒体14に格納される各ファイルについて、ショートファイル名のローカルコード列を取得し、前記変換したローカルコード列を、前記取得した各ファイルのショートファイル名のローカルコード列と比較し(S108)、ローカルコード列が一致したファイルをファイルシステム36を介して記憶媒体14から読み出して(S109)、クライアント端末26に送信する(S106)。
If such conversion is possible, the
これにより、クライアント端末26は、ユーザが指示したファイルを取得することができる。
Thereby, the
なお、S107において変換ができない場合、ファイル管理モジュール35は、前記指定されたファイル名が変換後ショートファイル名でないと判断する。この場合、ファイル管理モジュール35は、記憶媒体14に対応するファイルが存在しないと判断して、その旨のメッセージをクライアント端末26に送信する。
If the conversion cannot be performed in S107, the
このように、本実施形態では、記憶媒体14に格納される各ファイルについてファイル情報を送信する際に、1バイトコード変換テーブル100を用いて、ローカルコードで記述されたショートファイル名を、ユニコードで記述された変換後ショートファイル名に変換してファイル情報を作成し、また、クライアント端末26から指定された変換後ショートファイル名を指定したファイル読み出し要求を受け付けた際に、1バイトコード変換テーブル100を用いて、ユニコードで記述された変換後ショートファイル名を、ローカルコードで記述されたショートファイル名に変換して、記憶媒体14に格納される各ファイルのショートファイル名と比較する構成を採用している。
As described above, in this embodiment, when transmitting file information for each file stored in the
かかる構成によれば、上述したように、1バイトコード変換テーブル100は、ローカルコードに依存しない共通変換テーブルとして機能するため、ファイル読み出しのためにローカルコードのコード体系ごとに変換テーブルを有する必要はなく、ローカルコードのコード体系を予め指定せずとも、ファイルシステム36を介してファイルの読み出しを行うことができる。また、コード体系ごとの変換テーブルが不要となる結果、変換テーブルのために必要であったメモリ資源の消費を抑制することができ、また新しいコード体系に対応させるためのローカライズ作業も不要となる。
According to this configuration, as described above, the 1-byte code conversion table 100 functions as a common conversion table that does not depend on a local code. Therefore, it is not necessary to have a conversion table for each local code system for reading a file. In addition, the file can be read through the
(ファイル書き込み処理:図5)
クライアント端末26は、記憶媒体14にファイルXを書き込む場合、ユーザの指示に基づき、ファイルXの本体データ、ユニコードで記述されたファイル名Yなどを含むファイル書き込み要求を作成し、プリンタ1に送信する。
(File writing process: FIG. 5)
When writing the file X to the
ファイル管理モジュール35は、クライアント端末26からファイル書き込み要求を受け付けた場合、該ファイル書き込み要求において指定されたファイル名Yのユニコード列を取得する(S200)。
When receiving a file write request from the
次に、ファイル管理モジュール35は、前記取得したユニコード列に基づき、ファイル名Yに非ASCII文字が含まれているか否かを判定する(S201)。
Next, the
非ASCII文字が含まれていない場合、ファイル管理モジュール35は、ASCII文字のみから構成されるファイル名Yに基づき、ASCII文字で構成されるショートファイル名を作成し(S202)、その後、S205の工程に移行する。
If the non-ASCII character is not included, the
ショートファイル名の作成は、従来と同様にして行うことができる。例えば、ファイル名Yが8.3形式を満たす場合、ファイル名Yのユニコード列をそのままローカルコード列として用いてショートファイル名を作成する。一方、ファイル名Yが8.3形式を満たさない場合、ファイル名Yを、8.3形式を満たし、かつASCII文字のみから構成されるように省略・変形し、省略・変形後のファイル名のユニコード列をローカルコード列として用いてショートファイル名を作成する。省略・変形の方法としては、例えば、ファイル名Yが「abcdefghijk.txt」である場合、これを「abcdef~1.txt」のように省略・変形することが考えられる。 The short file name can be created in the same manner as before. For example, when the file name Y satisfies the 8.3 format, a short file name is created using the Unicode string of the file name Y as it is as a local code string. On the other hand, if the file name Y does not satisfy the 8.3 format, the file name Y is omitted / modified so as to satisfy the 8.3 format and consist only of ASCII characters. Create a short file name using the Unicode string as the local code string. As an omission / deformation method, for example, when the file name Y is “abcdefghijk.txt”, it may be omitted / deformed as “abcdef˜1.txt”.
一方、非ASCII文字が含まれている場合、ファイル管理モジュール35は、ファイル名Yのユニコード列の各ユニコードにユニコードハッシュ関数101を適用して、ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換する(S203)。
On the other hand, when a non-ASCII character is included, the
ユニコードハッシュ関数101は、1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲、望ましくはASCII文字のうち制御文字以外の一般の文字(例えば、「A」〜「Z」、「0」〜「9」)に割り当てられる範囲の1バイトコードを出力するハッシュ関数である。通常、どのローカルコードにおいても、00〜7FにはASCII文字が割り当てられているため、ユニコードハッシュ関数101は、ローカルコードに共通するコードを出力するハッシュ関数として機能する。また、ユニコードハッシュ関数101を適用して得られる1バイトコードの列は、いずれのローカルコードのコード体系においても、ASCII文字のみから構成される同一の文字列を表すことになる。 The Unicode hash function 101 receives an input of Unicode for one character and is in a range of 00 to 7F assigned to an ASCII character, preferably a general character other than the control character among the ASCII characters (for example, “A” to “Z”, This is a hash function that outputs a 1-byte code in a range assigned to “0” to “9”). Normally, in any local code, ASCII characters are assigned to 00 to 7F, so the Unicode hash function 101 functions as a hash function that outputs a code common to the local code. In addition, the 1-byte code sequence obtained by applying the Unicode hash function 101 represents the same character string composed of only ASCII characters in any local code system.
ユニコードハッシュ関数101の態様は、設計に応じて定めることができる。例えば、1文字分のユニコードを1バイトごとに区切り、前記区切って得られた各1バイトを合計し、かかる合計値を127で割った場合の剰余を出力するように、ユニコードハッシュ関数101を定めてもよい。また例えば、ASCII文字のユニコードが入力された場合、そのASCII文字に対応する1バイトコードを出力し、非ASCII文字のユニコードが入力された場合、特定のASCII文字(例えば、「_」)に割り当てられる1バイトコードを出力するように、ユニコードハッシュ関数101を定めてもよい。 The aspect of the Unicode hash function 101 can be determined according to the design. For example, the Unicode hash function 101 is defined so that the Unicode for one character is delimited every byte, each 1 byte obtained by the delimitation is totaled, and the remainder when the total value is divided by 127 is output. May be. Also, for example, when an ASCII character Unicode is input, a 1-byte code corresponding to the ASCII character is output, and when a non-ASCII character Unicode is input, it is assigned to a specific ASCII character (for example, “_”). The Unicode hash function 101 may be defined so as to output a 1-byte code.
次に、ファイル管理モジュール35は、ASCII文字のみから構成される前記変換した1バイトコードの列に基づき、ASCII文字で構成されるショートファイル名を作成する(S204)。ショートファイル名の作成は、上記に例を示したように、従来と同様にして実行できる。
Next, the
次に、ファイル管理モジュール35は、前記作成したショートファイル名を前記書き込み要求を受けたファイルXのショートファイル名として設定し、また必要に応じてファイル名Yをロングファイル名として設定して、ファイルシステム36を介して記憶媒体14にファイルXを書き込む(S205)。
Next, the
このように、本実施形態では、クライアント端末26から、ユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた際に、ファイル名Yにユニコードハッシュ関数101を適用してASCII文字で構成されるショートファイル名を作成し、前記作成したショートファイル名を用いて記憶媒体14にファイルXを書き込む構成を採用している。
As described above, in this embodiment, when a write request for the file X specifying the file name Y described in Unicode is received from the
かかる構成によれば、上述したように、ユニコードハッシュ関数101は、ローカルコードに共通するコードを出力するハッシュ関数として機能するため、ファイル書き込みのためにローカルコードのコード体系ごとに変換テーブルを有する必要はなく、ローカルコードのコード体系を予め指定せずとも、ファイルシステム36を介してファイルの書き込みを行うことができる。また、コード体系ごとの変換テーブルが不要となる結果、変換テーブルのために必要であったメモリ資源の消費を抑制することができ、また新しいコード体系に対応させるためのローカライズ作業も不要となる。
According to such a configuration, as described above, the Unicode hash function 101 functions as a hash function that outputs a code common to the local code, and therefore needs to have a conversion table for each code system of the local code for file writing. No, the file can be written via the
また、かかる構成のもと書き込まれたファイルXは、そのショートファイル名がASCII文字のみから構成されるため、どのようなローカルコードのコード体系を採用するファイルシステムにおいても、ショートファイル名を同一の文字列として正しく読み出すことができる。 In addition, the file X written under such a configuration has a short file name composed of only ASCII characters, so that the same short file name is used in any local file code system. It can be read correctly as a character string.
(変形例)
本発明は上記実施形態に限定されることなく、種々に変形して適用することが可能である。例えば、上記実施形態ではプリンタ1を例に説明しているが、本発明は、複写機、ファクシミリ、複合機などの印刷装置に対しても適用することができる。更に、クライアント端末からのファイル読み出し要求に応じて、ファイルシステムを介してファイルを読み出してクライアント端末に送信し、クライアント端末からのファイル書き込み要求に応じて、ファイルシステムを介してファイルを書き込む機能を備えた装置であれば、印刷装置以外の装置に対しても適用可能である。
(Modification)
The present invention is not limited to the above-described embodiment, and can be variously modified and applied. For example, in the above embodiment, the printer 1 is described as an example. However, the present invention can also be applied to a printing apparatus such as a copying machine, a facsimile machine, and a multifunction machine. In addition, in response to a file read request from the client terminal, a file is read via the file system and transmitted to the client terminal, and a file is written via the file system in response to a file write request from the client terminal. The present invention is applicable to apparatuses other than printing apparatuses.
また、上記実施形態では、ファイル読み出し処理において、記憶媒体14に格納される各ファイルの変換後ショートファイル名を設定しているが、かかる各ファイルの変換後ショートファイル名を設定する処理を、ファイル読み出し処理とは別の処理として実行してもよい。
In the above embodiment, in the file reading process, the converted short file name of each file stored in the
また例えば、上記実施形態では、ファイル読み出し処理において1バイトコード変換テーブル100を用いてファイル名を変換する構成としているが、1バイトコード変換テーブル100に代えて、1バイトコードハッシュ関数102を用いてファイル名を変換する構成としてもよい。 Further, for example, in the above-described embodiment, the file name is converted using the 1-byte code conversion table 100 in the file reading process, but instead of the 1-byte code conversion table 100, the 1-byte code hash function 102 is used. The file name may be converted.
1バイトコードハッシュ関数102は、1バイトコード00〜FFを入力とし、1文字分のユニコード(制御文字以外の一般の文字のユニコード)を出力するハッシュ関数である。1バイトコードハッシュ関数102の具体的態様、すなわち、各1バイトコードに対してどのようなユニコードを出力するかは、変換しようとしているショートファイル名が採用するローカルコードのコード体系に関係なく、設計に応じて定めることができる。 The 1-byte code hash function 102 is a hash function that inputs 1-byte code 00 to FF and outputs Unicode for one character (unicode of general characters other than control characters). The specific form of the 1-byte code hash function 102, that is, what kind of Unicode is output for each 1-byte code is designed regardless of the local code system adopted by the short file name to be converted. Can be determined according to
ただし、1バイトコード00〜7Fが入力された場合、ASCII文字のユニコードを出力するように、1バイトコードハッシュ関数102を構成することが望ましい。1バイトコード変換テーブル100の場合と同様に、変換後ショートファイル名をASCII文字のみで構成することができ、ファイル書き込み時に作成するショートファイル名と共通性を持たせることができるからである。 However, it is desirable that the 1-byte code hash function 102 is configured to output ASCII character Unicode when the 1-byte code 00 to 7F is input. This is because, as in the case of the 1-byte code conversion table 100, the short file name after conversion can be composed only of ASCII characters, and can have commonality with the short file name created when writing the file.
また1バイトコードハッシュ関数102を適用してファイル名を変換する場合も、1バイトコード変換テーブル100の場合と同様に、変換前後でファイル名の文字は一致しない可能性がある。しかし、1バイトコードハッシュ関数102を適用することで、1バイトコード00〜FF全てに対してユニコードが割り当てられるため、ユニコードが割り当てられていないローカルコードが存在する可能性のある各ローカルコードごとの変換テーブルを適用した場合とは異なり、必ずユニコードで記述された変換後ショートファイル名を設定することができる。 Also, when the file name is converted by applying the 1-byte code hash function 102, the characters of the file name may not match before and after the conversion, as in the case of the 1-byte code conversion table 100. However, by applying the 1-byte code hash function 102, Unicode is assigned to all the 1-byte codes 00 to FF, so that there is a possibility that there is a local code to which no Unicode is assigned. Unlike the case where a conversion table is applied, a short file name after conversion written in Unicode can be set.
以下、図7を参照して、1バイトコードハッシュ関数102を用いる場合のファイル読み出し処理について説明する。 Hereinafter, with reference to FIG. 7, a file reading process when the 1-byte code hash function 102 is used will be described.
アクセス制御部34は、クライアント端末26から記憶媒体14に関するファイル情報の要求を受信した場合、該要求をファイル管理モジュール35に通知する(S300)。
When the
ファイル管理モジュール35は、ファイル情報要求を受け付けた場合、ファイルシステム36を介して、記憶媒体14に格納される各ファイルについて、ショートファイル名のローカルコード列を取得する(S301)。
When the
次に、ファイル管理モジュール35は、記憶媒体14に格納される各ファイルについて、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに1バイトコードハッシュ関数102を適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ショートファイル名を設定する(S302)。
Next, for each file stored in the
次に、ファイル管理モジュール35は、記憶媒体14に格納される各ファイルについて前記設定した変換後ショートファイル名を含むファイル情報を作成し、クライアント端末26に送信する(S303)。ファイル情報は、ロングファイル名が設定されているファイルについては、ロングファイル名のユニコード列を含んでいてもよい。また、ファイルサイズや作成日時などの情報を含んでいてもよい。
Next, the
クライアント端末26では、かかるファイル情報を受信した場合、該ファイル情報に基づき、変換後ショートファイル名等の一覧リストを表示部に表示する。ユーザは、かかる一覧リストを参照し、ファイル読み出しを指示することができる。クライアント端末26では、ユーザからファイル読み出しの指示を受け付けた場合、指示されたファイルを変換後ショートファイル名等で指定したファイル読み出し要求を作成し、プリンタ1に送信する。
When the file information is received, the
ファイル管理モジュール35は、クライアント端末26からファイル読み出し要求を受け付けた場合、まず前記ファイル読み出し要求において指定されたファイル名と、記憶媒体14に格納される各ファイルのロングファイル名(設定されている場合)とを比較する(S304)。
When the
ロングファイル名が一致するファイルがある場合、該ファイルをファイルシステム36を介して記憶媒体14から読み出して(S305)、クライアント端末26に送信する(S306)。
If there is a file whose long file name matches, the file is read from the
一方、ロングファイル名が一致するファイルが無い場合、ファイル管理モジュール35は、前記指定されたファイル名のユニコード列を取得し、記憶媒体14に格納される各ファイルについて前記設定した変換後ショートファイル名のユニコード列を、前記指定されたファイル名のユニコード列と比較し(S307)、ユニコード列が一致したファイルをファイルシステム36を介して記憶媒体14から読み出して(S308)、クライアント端末26に送信する(S306)。
On the other hand, if there is no file whose long file name matches, the
これにより、クライアント端末26は、ユーザが指示したファイルを取得することができる。
Thereby, the
かかる構成によれば、ローカルコードのコード体系ごとに変換テーブルを有する必要はなく、ローカルコードのコード体系を予め指定せずとも、ファイルシステム36を介してファイルの読み出しを行うことができる。
According to such a configuration, it is not necessary to have a conversion table for each local code system, and a file can be read out via the
1…プリンタ、14、15、16…記憶媒体、17、18、19…スロット、22、25…ポート、23…外部記憶装置、26…クライアント端末、30〜33…スロット制御部、34…アクセス制御部、35…ファイル管理モジュール、36…ファイルシステム、37…印刷制御部、40…印刷処理部、41…情報処理部、100…1バイトコード変換テーブル、101…ユニコードハッシュ関数、102…1バイトコードハッシュ関数 DESCRIPTION OF SYMBOLS 1 ... Printer, 14, 15, 16 ... Storage medium, 17, 18, 19 ... Slot, 22, 25 ... Port, 23 ... External storage device, 26 ... Client terminal, 30-33 ... Slot control part, 34 ... Access control 35: File management module, 36 ... File system, 37 ... Print control unit, 40 ... Print processing unit, 41 ... Information processing unit, 100 ... 1 byte code conversion table, 101 ... Unicode hash function, 102 ... 1 byte code Hash function
Claims (10)
1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てた1バイトコード変換テーブルを記憶する手段と、
前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコード変換テーブルを適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、
前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、
前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記指定された変換後ファイル名のユニコード列の各ユニコードに前記1バイトコード変換テーブルを適用して、前記変換後ファイル名のユニコード列をローカルコード列に変換し、前記変換したローカルコード列を前記記憶媒体に格納される各ファイルのファイル名のローカルコード列と比較し、ローカルコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、
1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、
前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定し、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成し、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成し、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む手段と、
を備えることを特徴とするファイル管理モジュール。 In response to a file read request from the client terminal, the file is read from the storage medium via the file system and transmitted to the client terminal. In response to a file write request from the client terminal, the file is stored in the storage medium via the file system. A file management module to write,
Means for storing a 1-byte code conversion table in which any Unicode is assigned to each of the 1-byte codes 00 to FF without duplication;
For each file stored in the storage medium, a local code string of a file name is acquired, and the 1-byte code conversion table is added to each 1-byte code when the acquired local code string is regarded as a 1-byte code string. Applying, converting the acquired local code string to a Unicode string, and setting a file name after conversion of the file by the converted Unicode string,
A file including a file name after conversion set by the file name conversion means for each file stored in the storage medium when a request for file information of each file stored in the storage medium is received from the client terminal Means for transmitting information to the client terminal;
When receiving a file read request designating the converted file name from the client terminal, the 1-byte code conversion table is applied to each Unicode of the Unicode string of the designated converted file name, and the converted file A Unicode string of a name is converted into a local code string, the converted local code string is compared with a local code string of a file name of each file stored in the storage medium, and a file having a matching local code string is compared with the file system Means for reading from the storage medium via the network and transmitting to the client terminal;
Means for storing a unicode hash function that takes a unicode for one character as input and outputs a 1-byte code in a range of 00 to 7F assigned to an ASCII character;
When a write request for a file X specifying a file name Y described in Unicode is received from the client terminal, it is determined whether or not a non-ASCII character is included in the file name Y. Based on the file name Y, a file name composed of ASCII characters is created, and if included, the Unicode hash function is applied to each Unicode of the Unicode string of the file name Y to obtain the Unicode of the file name Y The sequence is converted to a 1-byte code sequence in the range of 0 to 7F, a file name composed of ASCII characters is created based on the converted 1-byte code sequence, and the file is created using the created file name. Means for writing the file X to the storage medium via a system;
A file management module comprising:
1バイトコード00〜FFを入力とし、1文字分のユニコードを出力する1バイトコードハッシュ関数を記憶する手段と、
前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコードハッシュ関数を適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、
前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、
前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名のユニコード列を前記指定された変換後ファイル名のユニコード列と比較し、ユニコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、
1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、
前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定し、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成し、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成し、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む手段と、
を備えることを特徴とするファイル管理モジュール。 In response to a file read request from the client terminal, the file is read from the storage medium via the file system and transmitted to the client terminal. In response to a file write request from the client terminal, the file is stored in the storage medium via the file system. A file management module to write,
Means for storing a 1-byte code hash function that inputs 1-byte code 00 to FF and outputs Unicode for one character;
For each file stored in the storage medium, a local code string of a file name is acquired, and the 1-byte code hash function is added to each 1-byte code when the acquired local code string is regarded as a 1-byte code string. Applying, converting the acquired local code string to a Unicode string, and setting a file name after conversion of the file by the converted Unicode string,
A file including a file name after conversion set by the file name conversion means for each file stored in the storage medium when a request for file information of each file stored in the storage medium is received from the client terminal Means for transmitting information to the client terminal;
When receiving a file read request designating the converted file name from the client terminal, the designation of the Unicode string of the converted file name set by the file name converting means for each file stored in the storage medium Means for reading the file with the matching Unicode string from the storage medium via the file system and comparing it with the Unicode string of the file name after conversion,
Means for storing a unicode hash function that takes a unicode for one character as input and outputs a 1-byte code in a range of 00 to 7F assigned to an ASCII character;
When a write request for a file X specifying a file name Y described in Unicode is received from the client terminal, it is determined whether or not a non-ASCII character is included in the file name Y. Based on the file name Y, a file name composed of ASCII characters is created, and if included, the Unicode hash function is applied to each Unicode of the Unicode string of the file name Y to obtain the Unicode of the file name Y The sequence is converted to a 1-byte code sequence in the range of 0 to 7F, a file name composed of ASCII characters is created based on the converted 1-byte code sequence, and the file is created using the created file name. Means for writing the file X to the storage medium via a system;
A file management module comprising:
1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てた1バイトコード変換テーブルを記憶する手段と、
前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコード変換テーブルを適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、
前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、
前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記指定された変換後ファイル名のユニコード列の各ユニコードに前記1バイトコード変換テーブルを適用して、前記変換後ファイル名のユニコード列をローカルコード列に変換し、前記変換したローカルコード列を前記記憶媒体に格納される各ファイルのファイル名のローカルコード列と比較し、ローカルコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、
を備えることを特徴とするファイル管理モジュール。 A file management module that reads a file from a storage medium via a file system and transmits it to a client terminal in response to a file read request from the client terminal,
Means for storing a 1-byte code conversion table in which any Unicode is assigned to each of the 1-byte codes 00 to FF without duplication;
For each file stored in the storage medium, a local code string of a file name is acquired, and the 1-byte code conversion table is added to each 1-byte code when the acquired local code string is regarded as a 1-byte code string. Applying, converting the acquired local code string to a Unicode string, and setting a file name after conversion of the file by the converted Unicode string,
A file including a file name after conversion set by the file name conversion means for each file stored in the storage medium when a request for file information of each file stored in the storage medium is received from the client terminal Means for transmitting information to the client terminal;
When receiving a file read request designating the converted file name from the client terminal, the 1-byte code conversion table is applied to each Unicode of the Unicode string of the designated converted file name, and the converted file A Unicode string of a name is converted into a local code string, the converted local code string is compared with a local code string of a file name of each file stored in the storage medium, and a file having a matching local code string is compared with the file system Means for reading from the storage medium via the network and transmitting to the client terminal;
A file management module comprising:
1バイトコード00〜FFを入力とし、1文字分のユニコードを出力する1バイトコードハッシュ関数を記憶する手段と、
前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得し、前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに前記1バイトコードハッシュ関数を適用して、前記取得したローカルコード列をユニコード列に変換し、前記変換したユニコード列により該ファイルの変換後ファイル名を設定するファイル名変換手段と、
前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する手段と、
前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名のユニコード列を前記指定された変換後ファイル名のユニコード列と比較し、ユニコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する手段と、
を備えることを特徴とするファイル管理モジュール。 A file management module that reads a file from a storage medium via a file system and transmits it to a client terminal in response to a file read request from the client terminal,
Means for storing a 1-byte code hash function that inputs 1-byte code 00 to FF and outputs Unicode for one character;
For each file stored in the storage medium, a local code string of a file name is acquired, and the 1-byte code hash function is added to each 1-byte code when the acquired local code string is regarded as a 1-byte code string. Applying, converting the acquired local code string to a Unicode string, and setting a file name after conversion of the file by the converted Unicode string,
A file including a file name after conversion set by the file name conversion means for each file stored in the storage medium when a request for file information of each file stored in the storage medium is received from the client terminal Means for transmitting information to the client terminal;
When receiving a file read request designating the converted file name from the client terminal, the designation of the Unicode string of the converted file name set by the file name converting means for each file stored in the storage medium Means for reading the file with the matching Unicode string from the storage medium via the file system and comparing it with the Unicode string of the file name after conversion,
A file management module comprising:
1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、
前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定し、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成し、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成し、前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む手段と、
を備えることを特徴とするファイル管理モジュール。 A file management module that writes a file to a storage medium via a file system in response to a file write request from a client terminal,
Means for storing a unicode hash function that takes a unicode for one character as input and outputs a 1-byte code in a range of 00 to 7F assigned to an ASCII character;
When a write request for a file X specifying a file name Y described in Unicode is received from the client terminal, it is determined whether or not a non-ASCII character is included in the file name Y. Based on the file name Y, a file name composed of ASCII characters is created, and if included, the Unicode hash function is applied to each Unicode of the Unicode string of the file name Y to obtain the Unicode of the file name Y The sequence is converted to a 1-byte code sequence in the range of 0 to 7F, a file name composed of ASCII characters is created based on the converted 1-byte code sequence, and the file is created using the created file name. Means for writing the file X to the storage medium via a system;
A file management module comprising:
前記ファイル読み出し工程が、
前記記憶媒体に格納される各ファイルについて、ファイル名のローカルコード列を取得する工程と、
前記取得したローカルコード列を1バイトコード列と見なした場合の各1バイトコードに、1バイトコード00〜FFそれぞれに対していずれかのユニコードを重複なく割り当てた1バイトコード変換テーブルを適用して、前記取得したローカルコード列をユニコード列に変換する工程と、
前記変換したユニコード列により該ファイルの変換後ファイル名を設定する工程と、
前記クライアント端末から前記記憶媒体に格納される各ファイルのファイル情報の要求を受け付けた場合、前記記憶媒体に格納される各ファイルについて、前記ファイル名変換手段によって設定された変換後ファイル名を含むファイル情報を、前記クライアント端末に送信する工程と、
前記クライアント端末から前記変換後ファイル名を指定したファイル読み出し要求を受け付けた場合、前記指定された変換後ファイル名のユニコード列の各ユニコードに前記1バイトコード変換テーブルを適用して、前記変換後ファイル名のユニコード列をローカルコード列に変換する工程と、
前記変換したローカルコード列を前記記憶媒体に格納される各ファイルのファイル名のローカルコード列と比較する工程と、
前記比較の結果、ローカルコード列が一致したファイルを前記ファイルシステムを介して前記記憶媒体から読み出して前記クライアント端末に送信する工程と、
1文字分のユニコードを入力とし、ASCII文字に割り当てられる00〜7Fの範囲の1バイトコードを出力するユニコードハッシュ関数を記憶する手段と、を備え、
前記ファイル書き込み工程が、
前記クライアント端末からユニコードで記述されたファイル名Yを指定したファイルXの書き込み要求を受け付けた場合、前記ファイル名Yに非ASCII文字が含まれているか否かを判定する工程と、
前記判定の結果、含まれない場合は、前記ファイル名Yに基づき、ASCII文字で構成されるファイル名を作成する工程と、
前記判定の結果、含まれる場合は、前記ファイル名Yのユニコード列の各ユニコードに前記ユニコードハッシュ関数を適用して、前記ファイル名Yのユニコード列を00〜7Fの範囲の1バイトコードの列に変換し、前記変換した1バイトコードの列に基づき、ASCII文字で構成されるファイル名を作成する工程と、
前記作成したファイル名を用いて前記ファイルシステムを介して前記記憶媒体に前記ファイルXを書き込む工程と、を備えることを特徴とするファイル管理方法。 In response to a file read request from the client terminal, a file read process for reading the file from the storage medium via the file system and transmitting it to the client terminal; and in response to a file write request from the client terminal, stored via the file system A file management method including a file writing step of writing a file to a medium,
The file reading step includes
Obtaining a local code string of a file name for each file stored in the storage medium;
A 1-byte code conversion table in which any Unicode is assigned to each 1-byte code 00 to FF without duplication is applied to each 1-byte code when the acquired local code sequence is regarded as a 1-byte code sequence. Converting the acquired local code string into a Unicode string;
Setting the converted file name of the file by the converted Unicode string;
A file including a file name after conversion set by the file name conversion means for each file stored in the storage medium when a request for file information of each file stored in the storage medium is received from the client terminal Transmitting information to the client terminal;
When receiving a file read request designating the converted file name from the client terminal, the 1-byte code conversion table is applied to each Unicode of the Unicode string of the designated converted file name, and the converted file Converting the Unicode string of the name to a local code string;
Comparing the converted local code string with a local code string of a file name of each file stored in the storage medium;
As a result of the comparison, reading a file with a matching local code string from the storage medium via the file system and transmitting it to the client terminal;
Means for storing a unicode hash function that takes a unicode for one character as input and outputs a 1-byte code in a range of 00 to 7F assigned to an ASCII character;
The file writing step includes
A step of determining whether or not a non-ASCII character is included in the file name Y when receiving a write request for the file X specifying the file name Y described in Unicode from the client terminal;
As a result of the determination, if not included, creating a file name composed of ASCII characters based on the file name Y;
As a result of the determination, if it is included, the Unicode hash function is applied to each Unicode of the Unicode string of the file name Y, and the Unicode string of the file name Y is converted into a 1-byte code string in the range of 0 to 7F. Converting and creating a file name composed of ASCII characters based on the converted string of 1-byte code;
Writing the file X to the storage medium via the file system using the created file name.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007313569A JP2009140063A (en) | 2007-12-04 | 2007-12-04 | File management module, printing device, file management method, file management program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007313569A JP2009140063A (en) | 2007-12-04 | 2007-12-04 | File management module, printing device, file management method, file management program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009140063A true JP2009140063A (en) | 2009-06-25 |
Family
ID=40870634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007313569A Pending JP2009140063A (en) | 2007-12-04 | 2007-12-04 | File management module, printing device, file management method, file management program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009140063A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013058065A (en) * | 2011-09-08 | 2013-03-28 | Seiko Epson Corp | Control method of control device, and program |
JP5616465B2 (en) * | 2011-06-02 | 2014-10-29 | パナソニック株式会社 | Information recording apparatus, information recording system, and information communication method |
US9110615B2 (en) | 2011-08-03 | 2015-08-18 | Seiko Epson Corporation | Point of sale control device, control method, and storage medium storing a program for a point of sale device |
-
2007
- 2007-12-04 JP JP2007313569A patent/JP2009140063A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5616465B2 (en) * | 2011-06-02 | 2014-10-29 | パナソニック株式会社 | Information recording apparatus, information recording system, and information communication method |
US9026715B2 (en) | 2011-06-02 | 2015-05-05 | Panasonic Intellectual Property Management Co., Ltd. | Information recording device, information recording system, and information communication method |
US9110615B2 (en) | 2011-08-03 | 2015-08-18 | Seiko Epson Corporation | Point of sale control device, control method, and storage medium storing a program for a point of sale device |
JP2013058065A (en) * | 2011-09-08 | 2013-03-28 | Seiko Epson Corp | Control method of control device, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8547561B2 (en) | Information processing apparatus, printing processing method, and program therefor | |
US20070070420A1 (en) | Printing control apparatus and printing control method | |
JP6794786B2 (en) | Information processing device, information processing method | |
CN100409167C (en) | Status information processor | |
KR20100074567A (en) | Method for producing digital sinature, print controling terminal unit and image forming apparatus | |
JP2009140063A (en) | File management module, printing device, file management method, file management program | |
CN103324450B (en) | Messaging device and information processing method | |
JP2004070871A (en) | Network printer and data sharing printing system | |
JP2010061536A (en) | Printing system, printing control device, and printing control program | |
JP2009151618A (en) | Printout control system, printout control method and computer program | |
JP2006252297A (en) | Print system | |
JP5215802B2 (en) | Printing device | |
JP2006228128A (en) | Information processing device, communication equipment controller, and program | |
JP4143638B2 (en) | Printing system, information processing apparatus, control method therefor, and program | |
JP2013120559A (en) | Information processing system, information processing method, and program | |
JP2008257628A (en) | Information processing device, document combining program, and recording medium | |
JP6822383B2 (en) | Image forming device and image forming system including it | |
JP4917560B2 (en) | Image forming apparatus and control method thereof | |
JP2000112684A (en) | Document printing system | |
JP2006146364A (en) | Print control device, print control method, print control system, program and storage medium | |
JP2004021460A (en) | Information processor and printer | |
JP2004078266A (en) | Printer driver | |
JP4635883B2 (en) | Electronic document printing system, electronic document creation apparatus, and printing control apparatus | |
KR100313869B1 (en) | Apparatus for generating printing data efficiently and method thereof | |
JP2008102704A (en) | Device apparatus and its control method, computer program and storage medium |