アプリ版:「スタンプのみでお礼する」機能のリリースについて

出会い系サイトなどで、よく使われている絵文字変換の機能をjavaでつくりたいのですが、さっぱりわかりません。どなたか、おわかりになる方教えて頂けるとたすかります。

A 回答 (5件)

文字コードは、



http://www.nttdocomo.co.jp/p_s/imode/tag/emoji/
http://www.au.kddi.com/ezfactory/tec/spec/3.html
http://www.dp.j-phone.com/dp/tool_dl/web/picword …

を参照して下さい。


文字化けですが、絵文字コードはShiftJISで定義されていないコード領域を使っているので、BufferedReaderでは絵文字が"?"に変換されてしまうと思います。InputStreamを使ってバイナリデータとして読み込んで処理するのがいいかと思います。そうすればバイト列の比較で絵文字が判別できるでしょう。

ご参考になれば幸いです。
    • good
    • 0

No.1です。



プログラムの動作環境が良くわからないのでなんともいえませんが、
PC上で絵文字の文字コードを表示させようとしても
コードに対応するフォントが存在しないため文字化けします。
また、通常はコード値で判定を行うため、
表示上文字が化けていても、化けていなくても判定は可能なはずです。

JavaであればcompareToで比較できるかもしれません。
この場合は10進コードではなくて、文字列として引数を渡します。
または、SJISを10進コードで判定する場合は、
まず絵文字の2バイトを1バイトずつ10進に変換し、
1バイト目と2バイト目を並べた4桁で比較を行います。
(1バイト目、2バイト目を順番に比較しても良いです。)
どちらの場合も、比較の際に文字コードが統一されている必要があります。

私、C使いのためJavaのコーディングに関しては
ちょっと知識が浅いです。
見当違いであれば申し訳ありません。
悪しからず。
    • good
    • 0

No.1です。



私が見た事のあるスクリプトでは、それぞれのキャリアごとの
絵文字の画像ファイルを用意しておき、
投稿メッセージの中の文字コードから絵文字を判定し、
画像に差し替えているようでした。

閲覧者から見た場合はすべてHTMLと画像になりますので
絵文字表現可能、という感じだったと思います。

絵文字のコード判定は、
1.キャリアの判定
2.コードの判定
の順で特定できると思います。

判定対象の絵文字コードは各キャリアのHPの
技術資料にあると思います(未確認です)

この回答への補足

コードの判定の仕方で、PCで普通に絵文字コードを入れて絵文字を判定させようとするのですが、文字化けして絵文字を判定させる事ができません、絵文字コードで判別はできないのでしょうか?

また、シフトJISコードや10進コードで絵文字を判別させる場合どのように記述すれば良いかわかる方、教えてもらえると助かります。

よろしくお願いします。

補足日時:2005/02/24 14:40
    • good
    • 0

http://elixir.neu.co.jp/convert1_1.html
こんなんでどうでしょ?
    • good
    • 0

出会い系サイトを使ったことが無くて、


各キャリアの仕様が分かってませんが、
単純に考えると渡されたコード値を目的の
キャリアのコード値へ変換すればできそうな気がしますが・・・。

この回答への補足

レス有難う御座います
先の質問内容がアバウトだったので補足します。
 
絵文字変換はPHPのHTTP_USER_AGENTを使用して、返ってくる機種の値を返すことで各キャリアごとにページをそれぞれ用意すれば通常のHTMLページ変換は可能ではあるのですが・・・
掲示板などに書き込まれた絵文字をjavaで判別する事は可能なのですか?

PHPやCGIのサンプルを色々見ましたが
いまいちどのように絵文字のコードを判別しているのかが理解できません。

補足日時:2005/02/22 13:16
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!