rausumaruの日記

日々考えたことなどを書き残すメモ帳。

天鳳牌譜(.mjlog形式)をXMLに直す

天鳳の牌譜を解析しようと思って天鳳位の牌譜を落としたら、謎の形式で書かれていて読める状態にするまでにかなり苦労したため、試行錯誤の過程と最終的にたどり着いた解決法を書き残しておこうと思う。

 

1.結論

1.1 解決したい問題の詳細

天鳳(https://tenhou.net/ranking.html)内において公開されている4人打ち天鳳位ASAPINさんの全牌譜(https://tenhou.net/0/log/mjlog_pf4-20_n1.zip)をダウンロードした。これを解凍したところ、中に入っていたデータはすべて.mjlogという形式のファイルになっていた。先人(http://m77.hatenablog.com/entry/2017/05/21/214529)などによるとこのデータはXML形式で書かれているらしいので、テキストデータとして表示することを試みた。しかしこのデータは文字化けしており、中身を確認することができない状態であった。そこでこのデータを適切に処理し、中にあるであろうXMLを表示させたい。

(windows環境)

1.2 解決法

 

.mjlog→.gzと拡張子を変換した後にgzip形式として解凍することで普通に扱えるXMLになる。

具体的に述べると、フォルダ内の.mjlogを全て変換したい場合ならば、以下のコードをコマンドライン上で(batファイル化したりして)実行することで一括して処理できる。

 

@echo off
setlocal
set /p folder="変換したいフォルダ: "
cd %folder%
ren *.mjlog *.gz
gzip -dr %folder%                        □

 

 

2.解決法にたどり着くまでの過程

 

書く気になったら追記する