[MRZ99] 楽ナビLite地点編集ツール

Submitted byshin on月, 2011-05-02 17:47
安定した(というか最近使ってないので改善する必要がない)ので 公開
# 公開前にちょっと触ったけど‥多分動くと思う:p
使用は自己責任で&簡単な要望なら対応します
20110502版
・「想定外のフォーマット…」が出るのは私が解析しきれていない(つまりは無視)
 している部分がヒットした可能性があります(私の環境でも出ます)。
 多分動きます。
・MRZ99の".L00"で検証しましたが、
 MRZ07の".L01"でも、拡張子を変更すれば動く様です(アイコン種類が違う)

どこまでやって、どこで困っているのか教えて頂けませんか?
概略でいうと
■環境構築
・ActivePerlをインストール
※拡張機能の追加インストールが必要だったかも
・作業フォルダ―を作成(とりあえずc:\xxx)
・作業フォルダ―に、RNLCedit.bat, RNLCedit.plを配置
■SDカードに保存した地点データをテキストに変換
・SDカードに入っている POINTREG.L00を配置
・RNLCedit.batに、POINTEREG.L00をドラッグ
("RNLCedit.bat POINTEREG.L00"を実行しているのと同値)
・POINTREG.TXTができる
■地点編集(テキストエディタで)
■テキストを地点データに変換
・RNLCedit.batに、POINTEREG.TXTをドラッグ
・できた、POINTREG.L00を、SDカードに格納
です。

返信ありがとうございます。
当方のナビMRZ07では、ファイル名がPOINTREG.L01になります。
拡張子をL00にしても
Can't open perl script "RNLCedit.pl":No such file or directory

C:\Program Files\Common Files\System\MAPI\1041\nt>set /p input=
となり変換出来ません。
よろしくお願いします。

■MRZ07のフォーマット確認
 とりあえず、この変換ツールがPOINTREG.L01に対応しているか確認
 したいです。
 数件地点登録した上で、
 http://www.gigafile.nu/v3/ 経由か何かで、POINTREG.L01を
 頂けませんか?
  (自宅設定とか、個人情報にかかわりそうなデータは抜いてください)
■手順確認
 ・POINTREG.L01 をPOINTREG.L00にrenameして、
  作業フォルダ(RNLCedit.bat, RNLCedit.pl, POINTREG.L00を格納
  したフォルダ)を、"C:\XXXX"にしてみてください
  ⇒フォルダをRUNCedit.plが認識できるかどうかの確認
 ・RNLCedit.plをダブルクリックしたら、コマンドプロンプトウィンドウ
  っぽいのが開いて閉じるかどうか確認してください
  ⇒拡張子.plがactiveperlに紐づいているかどうかの確認
 ・コマンドプロンプトを開いて、
  C:
  cd C:\XXXX
  perl -h .................... 使い方の表示
  perl RNLCedit.pl ........... 何もしないで終わるはず
  RNLCedit.pl ............ 何もしないで終わるはず
  RNLCedit.pl POINTREG.L00 ... 変換するはず
  RNLCedit.batにPOINTREG.L00をドラッグ ..... 変換するはず

一応これだけやれば次のアプローチが見えてくると思います

お世話になります。
・RNLCedit.plをダブルクリックしたら、コマンドプロンプトウィンドウ
  っぽいのが開いて閉じるかどうか確認してください
  ⇒拡張子.plがactiveperlに紐づいているかどうかの確認
>OK
 ・コマンドプロンプトを開いて、
  C:
  cd C:\XXXX
  perl -h .................... 使い方の表示
>OK
  perl RNLCedit.pl ........... 何もしないで終わるはず
>OK
  RNLCedit.pl ............ 何もしないで終わるはず
>OK
  RNLCedit.pl POINTREG.L00 ... 変換するはず
>変換するがレコード内に未処理のデータがあります。
想定と異なるデータがあります。メッセージが出ます。
  RNLCedit.batにPOINTREG.L00をドラッグ ..... 変換するはず
>C:\Documents and Settings\Adminstrator>set /p input=
以上です。
ファイルです。
http://www6.gigafile.nu/v3/?011a10e761bf54de70929b836aa25299
よろしくお願いします。

L01フォーマットでもうまく動いている気がします。
環境も問題なさそうです

実行時に"異なるメッセージが..."が出るのは私がフォーマットを完全
に解析していないからです。
"set /p input="等が出るのは仕様です
(混乱させてすみません)

"RNLCedit.pl POINTREG.L00"あるいは、"POINTREG.L00をRNLCedit.pl にD&D"
すればPOINTREG.TXTができます。
今回のサンプルだと、東京スカイツリーと種子島宇宙センターですよね。

毎回"L01"を"L00"に変更するのは面倒だと思います。
RNLCedit.plの中の、"L00"を"L01"に全置換して使ってください

仕様なので気にしないでください(前者は本当は気にしないといけないのですが

当方環境ではドラック&ドロップでは変換出来なかったのですが、
RNLCedit.pl POINTREG.L01
RNLCedit.pl POINTREG.TXT
で無事変換出来ました。
いろいろありがとうございました。

とりあえず一件落着ですね。
ちなみに、
>>   RNLCedit.batにPOINTREG.L00をドラッグ ..... 変換するはず
>> >C:\Documents and Settings\Adminstrator>set /p input=
の表示が出た時点で、RNLCedit.pl POINTREG.L00 の実行が終わっている
ので、POINTREG.TXTは出来ていませんか?

ちなみに、"set /p input="は、batファイルの最後に書いていて、
この行が無いと、直前の"RNLCedit.pl %"の実行が終わった途端に
ウィンドウが閉じられてしまい、RNLCedit.plのメッセージが確認
出来なくなるからです。
不要なら消しても構いません

残念ながら何度やっても
RNLCedit.batにPOINTREG.L01をドラッグでは
Can't open perl script "RNLCedit.pl":No such file or directory
となり変換できません。
WinXPSP3です。
とりあえず変換出来、当初の目的は達成しましたので、これ以上は求めません。
また、アイコンのコードも違う様で登録画面に無いアイコンも表示出来ます。
(チェッカーフラッグ等)同じコードでもちゃんと表示する物としない物もありました。ナビにて修正。
以上です。

# anonymousさん、すみません。
# 返事するところを、編集で書き込んでしまったので、
# 投稿して頂いた記事を上書きしてしまいました....

> POINTREG.TXTが文字化けしています。

windows標準のテキストエディタ(メモ帳)は、ShiftJISという漢字コードしか扱えない(だったはず)のですが、ShiftJISは処理が面倒な事が多いので、POINTREG.TXT(プログラムも) EUCという漢字コードで記述しています。

報告されている症状は、メモ帳でPOINTREG.TXTを開いた時と同じなので多分この状況だと思います。

googleなりで、「EUC テキストエディタ」で検索してEUCを扱えるテキストエディタをインストールしてください。
今のお勧めが何なのか言えないのですが、私の場合は"サクラエディタ"というのを使っています

書き忘れたのですが、POINTREG.TXTは
クリッカブルURLをサポートしたテキストエディタを前提にしています
クリッカブルURLの詳細は
http://sakura-editor.sourceforge.net/htmlhelp/HLP000129.html
確か、デフォルトでenableだったと思うのですが、もしかしたら
設定?共通設定?編集?クリックでURLを選択するをチェック
が必要かもしれません