某研究施設に勤務する研究者です。研究や趣味の麻雀のこと。

天鳳成績管理ツール
最終更新 2011-03-04

当ブログのデータ等を転載したい場合は筆者まで一報願います。

S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
牌譜解析記事まとめ
過去記事へのリンクをまとめています。

カテゴリ
以前の記事
【メモ】 mjlogファイルは常に圧縮されているとは限らない?
今試しに、直接mjlogファイルを読み込むルーチンを作ってみている。
ちなみにmjlogファイルというのは課金版天鳳でプレイすると自動的に保存される牌譜情報のファイルです。

このmjlogファイルは天鳳公式サイトのマニュアルによると、xmlをgz圧縮していると明記されています。

なので、ログが保存されているフォルダ以下にあるmjlogファイルにGZIP解凍をかけるスクリプトを作って走らせてみたところ、ごくわずかのファイルに解凍できないエラーが発生する。どうしてなのかなと、それらのファイルをバイナリエディタで開いてみたところ・・・、

なんと圧縮前のファイル、つまり既にxmlファイルになっているよー!?

調子悪いのは、ファイルの大半はgz圧縮ファイルで、ごくまれに本来のxmlファイルが紛れ込んでいるという状態(^^;)。サーバ側で圧縮をかけるときにエラーでも生じたとき、xmlのままでダウンロードされるってことなのかな?それにしても、gzもxmlも拡張子が同じmjlogだからパッと見て判別できない(圧縮されてないからファイルサイズが大きいけどゲームの長さによるから正確には分からない)。

一応、該当のファイルを移動させて再度ダウンロードしてみたけど結果は同じ・・・、orz。どうして特定のログだけ圧縮されないんだろ?

このために簡単なチェック用のプログラム(checkmjlog)を作ったので、興味あるという奇特な人がもしいたら確かめてみてね(^^;) ← イネーヨ

ちなみに僕のケースでは、

mjlog ファイル数 : 713
-----------------------------------
GZ圧縮ファイル数 : 694
XMLファイル数 : 19
上記以外のファイル数 : 0

という結果になって圧縮されていないXMLファイルが19個も見つかった。

つのさんに聞いてみようかな。
まあ、これが仕様だとすれば、読み込みルーチンは、とりあえず解凍をかけてみて、無理ならアスキーで読んで、xmlのヘッダーとかで牌譜のログであると判別すればいいわけだけど何か気持ち悪いよね(^^;)

どなたか知っている人いませんか?
[PR]
by doraaka | 2009-04-02 07:30 | 天鳳
<< 【メモ】 mjlogの卓情報を... ツール開発における有志の協力な... >>


その他のジャンル
Twitter
記事ランキング
画像一覧
AX