MESCIUS JPAddress for .NET 2.0J
辞書ファイルについて

辞書ファイルの種類や設定について解説します。
辞書ファイルの種類
住所情報を検索するためには、住所の辞書ファイルが必要です。住所検索ライブラリは、辞書ファイルとして下記3つのファイルを使用します。
ファイル名 辞書ファイルの種類
KEN_ALL.dat 郵便番号検索用辞書
JIGYOSYO.dat 大口事業所個別番号用辞書
shigai_list.dat 市外局番辞書

上記3つのファイルの他に、辞書ファイルの更新情報を保存する以下のファイルが必要です。このファイルには更新日時やそれぞれの辞書ファイルの更新年月が記載されています。
ファイル名 辞書ファイルの種類
JPAddressDBTimeStamp.dat 辞書ファイルの更新情報
辞書ファイルのインストール先
これらの辞書ファイルは[%CommonApplicationData%]\GrapeCity\JPAddressフォルダにインストールされます。この既定のフォルダに配置した辞書ファイルは、コンピュータ上の複数ユーザーや複数アプリケーションが共有して利用できます。JPAddressは既定でこのフォルダを参照します。

ASP.NET用のSP6以降をご利用の場合は、[%CommonApplicationData%]\MESCIUS\JPAddressフォルダにインストールされます。


デフォルトの[%CommonApplicationData%]フォルダは、以下のとおりです。(Cドライブがシステムドライブの場合)
  • C:\ProgramData

また、同じファイルは、[%インストール フォルダ%]\Dataフォルダにzip形式の圧縮ファイル(JPAddressDB.zip)としてインストールされます。このファイルは辞書ファイルを配布する際に利用します。
辞書ファイルの設定
WindowsフォームやWPFのようなデスクトップアプリケーションで上記の既定の参照先から任意のフォルダに参照先を変更したい場合には、アプリケーションの構成ファイルに辞書ファイルへの参照を追加します。App.configファイルに次のような構成セクションを追加して、辞書ファイルの配置場所を指定します。
<configuration>
<appSettings>
  <add key="JPAddressDataFileDirectory" value="./Data" />
</appSettings>
</configuration>

属性 説明
key 「JPAddressDataFileDirectory」を指定します。
value ファイルのパスを指定します。

WindowsフォームやWPFのようなデスクトップアプリケーションでは、EXEと同じフォルダに辞書ファイルを配置することも可能です。アプリケーションのEXEと同じフォルダに辞書ファイルが配置されると既定のフォルダに配置されたファイルよりも優先して参照され、構成ファイルに設定は不要です。

Windows の UAC(ユーザーアカウント制御)が有効な環境では Program Filesフォルダや[%CommonApplicationData%]フォルダへの書き込みが制限されるため、書き込みが制限されているフォルダに辞書ファイルが配置されている場合には辞書ファイルの更新が正しく行われません。この場合はアプリケーションを管理者権限で起動するか、もしくは書き込みが制限されていないフォルダに辞書ファイルを配置します。

Webアプリケーションの場合は、Web.configファイルに構成セクションを追加して辞書ファイルの配置場所を指定した上で、そのフォルダに辞書ファイルをコピーします。下記は、Webアプリケーションを配置しているBinフォルダ以下のDataフォルダに辞書ファイルを設定した例です。

<configuration>
<appSettings>
  <add key="JPAddressDataFileDirectory" value="~/Bin/Data" />
</appSettings>
</configuration>

属性 説明
key 「JPAddressDataFileDirectory」を指定します。
value ファイルのパスを指定します。

なお、Webアプリケーションで自動更新機能を利用するには、IISで辞書ファイルの配置フォルダに対してアクセス権限の設定が必要です。辞書ファイルの更新のため、書き込みの権限を与える必要があります。

上記の場所のいずれのフォルダにも辞書ファイルが存在しない場合は、例外が発生します。

関連トピック

 

 


© MESCIUS inc. All rights reserved.