メモ:青空文庫形式からEPUB形式へ変換
前フリ
自前の紙書籍がある場合でも、どこへ仕舞い込んだのか分からなくなる…
よくあることです。えぇ、非常によくあることです。
しかも最近は特に。
で、そんなこともあろうかと、OCR通したり色々やって電子データーに変換してたり
するんですけれど、近年はEPUB形式にしているんですけど古いのは画像データーであったりテキスト形式であったりするんですよね。で、中には「青空文庫形式」という(自分の中では)一時だけ使っていた形式があるんですよ。今、使っているリーダーだと読めないんですよ…
どんな形式?
テキスト(Shift-JIS)ファイルなんですけど、ルビだったり色々設定出来るんですけど、今使ってるEPUB形式への変換ツールだと変換出来ないんですよね…
あまりに昔に作ったんで規則も覚えてなかったんですけど、それはココにあったんですけどね。
自前でどうにか…
まぁ、仮にもプログラマーでご飯を食べていたので、自前でと思ってチマチマ作ってみたんですけど、元々が著作権の切れた書籍を電子データーでって形式なんで、漢文に対応してたり色々凝った形式と言えるんですけど、ルビも「|」が開始と決まっていなくて行頭からだと省略出来たり、かな文字をスルーしてとか意外と面倒でした…。
手持ちのファイルに漢文なぞ無いので、面倒なのをパスして使用しているタイプだけとも思ったんですけど、これは面倒過ぎるなと(笑)
車輪の再発明は不要(笑)
で、こんな面倒なのでも今どきなら変換ツールあるでしょと思ったんですけど、直近ではサイト(青空文庫)をXHTMLで保存して~的なのはあってもテキストからってのが見つからず、期間を限定しないで調べたらそのものズバリがあるじゃんと。
で、早速DLしてみたんですよ…詳細説明とか見ずに。
「~JAVA17以降をインストール~」ってのがありましてね、個人的な好みの問題なんですけど、JAVA嫌いなんですよ(笑)
いやーな感じがして来ましたが、履歴を見ると2015年が直近の変更のものらしいので、いけるかなーと思ったんですけどねぇ…
ホントJavaとは相性が悪いな
解凍してjar形式のファイルをダブルクリックで動くよ!とあったんですけどねぇ…動かん(笑)で、だめならコンソールからコマンドで動くよ!とあったので試してみたんですけどエラーメッセージ出て来ましたよ…ホントJavaとは相性が悪い。
「class Versionが新しいので作られているから動かんよ!」的なものでしたけど、そもそも”class version”って言われてもねという。で、今動いているのは、なんなんですか?
「java -verson」で叩くと「1.08~」とか出てくるの。待て待てとコントロールパネルをスタートメニューから「javaの構成」みたいなやつで起動してみたけど、同じ。
さて…”java17”ってのとこの"1.08~"のどっちが新しいのよってのと、エラーメッセージに出てきた”class version”はどういう関係なのよ?とかね。解凍した中にReadmeがあったので、そちらを見ると「~Version:21を…」とか出てくる。しかも adoptium.net からと。怪しいサイトではありません(Eclipse Foundation傘下)が、java.com じゃないのねと。
そもそも今動作中のものはどっからインストールしたものかと思ったら、Microsoft のものでしたよ…最新版にすればよかろうと思ったんですけど、コントロールパネルは、エラーを出してくれました。(内容忘れちゃいました)
面倒なんで、アンインストールして、java.com から最新持ってくることにしたんですけどね、面倒なんで開発版じゃなくても良いよねと「デスクトップ用の~」をインストールしたんですけど…動かねぇっす(笑)バージョン見ると、さっきまでのよりビルド的には新しいみたい(「1.08~」の「~」部分だけ)ですが、動かないなら同じ。
またまたアンインストールして面倒がらずに開発版で、確認してからにしました。
「Java 25」と「Java 21」とありますが、”class version”云々が分からんので、新しいので試そうと「Java 25」をインストールしましたよ。
コンソールからみる限り「java version "25" 2025-09-16 LTS」とあるので今度こそ…
結果
えぇ、動きました。再起動前はダブルクリックで動かずに一瞬焦りましたが、コンソールからは動いたので、パスが通ってないからかなと、再起動して再度確認したところダブルクリックでも動作しましたよ。で、これで満足してコーヒー入れてたんですけど、
変換してないわと(笑)
コーヒー飲みながら確認しました。ちゃんと、変換出来ましたよ。
Javaがデスクトップ用と開発者用を分けるのは良いんですけど、なんでversion表記を変えているのか理由があるんだろうけど、知らんがなと。
デスクトップ用が、ダウンロードページだと「Version 8 Update xxx」表記なのに、コントロールパネルとかでは、「1.08~」とか、わざと混乱させているのかと…
記憶が定かではないが、昔VBA案件の納品をした客先から「別件なんですけど~」みたいな相談をされた際にもハマったなと今になって思い出したよ。