INASOFT 管理人のひとこと


フリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。
2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。
・INASOFT Webサイト: https://www.inasoft.org/
・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/
2022年7月下旬より再び本業多忙化してきているため、更新頻度は落ちます。 [2022/7/24 19:32]

目次 | ←前へ / 2018-03-10 00:00 / 次へ→ / 最新へ⇒

■IBMのEBCDIC(日本語入り?)で書かれた文字列を変換してくれるWebサービスって…?

2018年 3月10日(土) 0:00:00 [さくらのブログから転記]



RSSRSS配信中
https://www.inasoft.org/



IBMのEBCDIC(おそらく日本語交じり)で書かれた文字列を変換してくれるWebサービスはないか?ということを聞かれたことがありました。
ちょっと聞いたことがなかったので、知らない旨回答したのですが、「ない物なら自分で作ってしまうことはできないか」と考える癖があり、いちおう考えてみることにしました。

そもそもそれは、どんなWebサービスとして提供されるものになるか。
パッと思いつくのは、Web上に文字列を貼り付けるフォームがあり、「コピペ」で貼り付けるというもの。

でも、少し考えればわかることだが、クリップボードにコピーされる時点で文字列になっているわけだから、その時点でSJISかUnicode(UTF-16)への変換は達成しているということになる。

IBM EBCDIC(日本語交じり)で書かれた、文字化けした文字列らしきものをコピーしたとしても、その時点でUnicode(UTF-16)へのOS内部変換が失敗してグチャグチャになる。変換前のコードをそのままコピペするのは困難。

では、「IBM EBCDIC(日本語交じり)で書かれたファイルをアップロードする」というのだとどうだろう。
これなら実現できそうではある。
ただ、そんなサービスを自分が使うか?と考えると、疑問である。

IBM EBCDIC(日本語交じり)の変換需要が個人で生じることはおそらくなくて、きっとIBMホスト上で得られた文字ということになるだろう。
例えば自社の機密指定された情報だったり、顧客情報だったりに属する。
そんなファイルを、どこの馬の骨ともしれないフリーのWebサービスにアップロードするのは危険極まりない。
技術者倫理に反する。

まぁ、百歩譲って、16進の羅列となったダンプをコピペすることなら可能かもしれない。
ユーザー側でバイト列を16進の羅列に加工し、Webサービス側で16進数の羅列を再びバイト列に再加工し、SJISかUTF-8あたりに変換してブラウザに返すことは可能だ。

で、変換ルーチンはどうするか。
Linuxの標準コマンドにIBM EBCDIC(日本語交じり)の変換ができればよいのだが、たしか、無かったはず。
個人的にもっともよく使う方法は、Javaの文字コード変換に任せてしまう方法である。

ただ、自分が契約しているレンタルサーバにJavaは入っていないため、やるとしたら、まず手元のPC上にJavaを入れ、0x00~0xff、それから、SO&SIで挟まれた0x0000~0xffffを入力にして、変換表を出力するプログラムを作る。その変換表をCSVか何かにして、Web上の変換サービスとして利用する。
これでできそう。

ただ、Javaのライブラリ(無料で公開されているものとはいえ)そういった形で、中のデータだけを使って独自サービスとして提供するのって、どうなんだろう。なんだか、フリーライドしているような気がして、気まずい。これはこれで、技術者倫理に反しそうな気がしないこともない。

というわけで、JBossEAPかなんかを提供してくれているレンタルサーバと契約するのがよさそうな気がする。
そこまですると手間がかかりすぎるので、やらないけど。




目次 | ←前へ / 2018-03-10 00:00 / 次へ→ / 最新へ⇒


目次の表示:


ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメールフィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。
当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。本ページは公開から1年半後の任意のタイミングで削除される予定です。


- 最近の更新 -



3212688 (+0037)[+0348]

Copyright© 2010-2024 INASOFT