とある所定のフォーマットのExcelデータを与えられ、これをjsonにしたい、という事態に遭遇。
名前 | 読み仮名 | URL | 行(ア、カ、…、ワ) | カテゴリ(複数可、カンマ区切り) |
---|---|---|---|---|
ハラヘル | はらへる | https://example.com | ハ | 天使,シェムハメフォラシュ |
エクセル | えくせる | http://example.jp | エ | 表計算 |
… | … | … | … | … |
VB等ならdllを用意したりして扱えますが、Web系の技術でExcelを扱うとなると、果てどうしたものか……と思っていたら。
あるらしいです。node.jsでExcelを扱うことのできるライブラリが。
その名もxlsx。そのままなのでググラビリティが低いですが、npmにいるので問題なし。
ということで、これを使って冒頭のフォーマットのExcelをjsonに変換するスクリプトを作ってみました。
「スキーマハメフォラシュ」って間違えそうな名前ですが、毎度の事ながら元ネタがあります。
リポジトリのreadme.md
にも書いてありますが、
名前はシェムハメフォラシュ(Shemhamephorash)の72の天使から。 「シェムハメフォラシュ」の頭の方がスキーマ(Schema)っぽい綴りをしていたので、データ構造を整理するスクリプトの名前としてパッと連想しました。
ネーミングの由来について詳しくは 所定のフォーマットのExcelからjsonを生成する「スキーマハメフォラシュの天使エクセル」 – Ewig Leere を参照。
……烏枢沙摩明王だったり紙舞だったりスフィンクスだったりと西に東に忙しい名前の付け方ですね。
内容としてはフォーマットを固定で指定しているため使いどころは限られますが、node.jsでExcelを扱うことができる知見ということで一つ。