- 1 名前:デフォルトの名無しさん [03/09/10 16:04]
- 文字コード変換について語りましょう♪
- 970 名前:デフォルトの名無しさん mailto:sage [05/02/20 22:28:34 ]
- あまり真剣に考えてもらわなくてもいいんですが、
多少間違ってても、判定不可という結論でもいいから 主にSJIS,EUC,UTF-8で書かれた短い文章のコードを判定するのに 上手い方法はありませんかね? というか、ぶっちゃけ2ch内に張られた googleとかwikiへのリンクのURLエンコードされた部分を iconv辺りを使ってSJISに直して表示してリンクしたら面白いかな、と ちょっと思ってみただけなんで 判定不可ならそのまま%xx%yyで表示すればよいだけなんで。
- 971 名前:デフォルトの名無しさん mailto:sage [05/02/21 01:36:35 ]
- SJISにしか出てこない値が出てきたらSJIS
EUCにしか出てこない値が・・・(以下略
- 972 名前:デフォルトの名無しさん mailto:sage [05/02/21 04:43:01 ]
- ASCIIにしか出てこない値が出てきたらASCII
- 973 名前:デフォルトの名無しさん mailto:sage [05/02/21 05:46:07 ]
- 色々切り替えて読めればそれ
- 974 名前:デフォルトの名無しさん mailto:sage [05/02/21 21:45:22 ]
- EBCDICとかどうよ
- 975 名前:デフォルトの名無しさん mailto:sage [05/02/21 21:46:02 ]
- なにが?
- 976 名前:デフォルトの名無しさん mailto:sage [05/02/21 21:55:27 ]
- EBCDIKでどうよ
- 977 名前:デフォルトの名無しさん mailto:sage [05/02/21 22:01:00 ]
- >>970
SJISのシーケンスを受理するオートマトン、 EUCのシーケンスを受理するオートマトン、 UTF-8のシーケンスを受理するオートマトン、 を用意して、入力バイト列を3つのオートマトンに入れてみる。 入力が終ったときに、受理したままのオートマトンが1つだけなら、 その文字コードで確定。 確定しない場合があるので、そういうときは追加の知識を使うしかない (google で ie= パラメータがあったら〜、とか)
- 978 名前:デフォルトの名無しさん mailto:sage [05/02/21 22:06:24 ]
- ↓オートマトン
- 979 名前:デフォルトの名無しさん mailto:sage [05/02/21 22:28:46 ]
- メェェー
- 980 名前:デフォルトの名無しさん mailto:sage [05/02/21 22:39:27 ]
- SJISのシーケンスを受理するヤギ、
EUCのシーケンスを受理するヤギ、 UTF-8のシーケンスを受理するヤギ、 を用意して、印刷物を3匹のヤギに食わせてみる。 食い終ったときに、「メェェー」って言ったヤギが1匹だけなら、 その文字コードで確定。 二匹啼いたときは、一匹殺せば無問題。
- 981 名前:デフォルトの名無しさん mailto:sage [05/02/21 22:44:47 ]
- それじゃぁ手始めに979を殺すということで
- 982 名前:デフォルトの名無しさん mailto:sage [05/02/21 23:14:52 ]
- >>970
|多少間違ってても、判定不可という結論でもいいから |主にSJIS,EUC,UTF-8で書かれた短い文章のコードを判定するのに |上手い方法はありませんかね? たぶん変換コード書いた人なら悟ってると思うけど、 3種類出力させて、判断は人間にまかせるのが簡単確実。 問題はその表示のしかたをどう分かりやすくできるかだが…
- 983 名前:デフォルトの名無しさん mailto:sage [05/02/21 23:50:46 ]
- 確実に判定することは不可能だけど
実用上は980^H^H77の方法でほとんど困らないと思う 利用者としてはリンク開くときに常に3択やらされるたらいやだなぁ
- 984 名前:デフォルトの名無しさん mailto:sage [05/02/21 23:52:10 ]
- 前半は980で、
二匹鳴いたら二匹並べればいいだろ。
- 985 名前:デフォルトの名無しさん mailto:sage [05/02/22 02:39:43 ]
- やっぱむやみにヤギを殺すのはよくないよね
- 986 名前:デフォルトの名無しさん mailto:sage [05/02/22 03:46:34 ]
- べつに
- 987 名前:デフォルトの名無しさん mailto:sage [05/02/22 11:07:32 ]
- というかさ、ヤギじゃなくてヒツジじゃないの?
- 988 名前:デフォルトの名無しさん mailto:sage [05/02/22 14:42:16 ]
- IE5 以上を入れているならばならば、IMultiLanguage にそんなメソッドがあったような?
- 989 名前:デフォルトの名無しさん mailto:sage [05/02/23 00:32:02 ]
- SJISのシーケンスを受理するヒツジが一匹、
EUCのシーケンスを受理するヒツジが二匹、 UTF-8のシーケンスを受理するヒツジが三匹、 . . zzz
- 990 名前:デフォルトの名無しさん mailto:sage [05/02/23 14:46:57 ]
- 次スレは?
- 991 名前:デフォルトの名無しさん mailto:sage [05/02/23 14:54:35 ]
- 【UTF8】文字コード変換 二匹目【SJIS】
- 992 名前:デフォルトの名無しさん mailto:sage [05/02/23 15:35:36 ]
- 次スレ立てるなら文字コード統一スレとか
Unicodeスレとかがいいんじゃね?
- 993 名前:デフォルトの名無しさん mailto:sage [05/02/23 21:35:57 ]
- 文字コード統一スレ 1文字目
プログラムにおける文字コードの取り扱いについて議論する統一スレッド です。 ほぼ前スレ 【UTF8】文字コード変換【SJIS】 pc5.2ch.net/test/read.cgi/tech/1063177450/ 参考ホームページ Unicode Home Page www.unicode.org/ Java Character Encodings www.ingrid.org/java/i18n/encoding/ euc.JP: tech docs, BeOS tools euc.jp/ ISO-IR - 2.8.1 Coding systems with Standard return www.itscj.ipsj.or.jp/ISO-IR/2-8-1.htm ISO-IR - 2.8.2 Coding Systems without Standard return www.itscj.ipsj.or.jp/ISO-IR/2-8-2.htm こんなんでどうですか?
- 994 名前:デフォルトの名無しさん mailto:sage [05/02/23 21:49:38 ]
- >>970
結局んとこは確率になるからなぁ 特に極短い文だとね IMultiLanguage2::DetectInputCodepage でもできるけど識別率はどんなもんだろ 試してないからわからんが中国語とかも識別できるだろうからいいかも? あとは>>691ででてた ttp://www.gprj.net/dev/tips/net/txtenc.shtml これか? これも識別率はわからん C#だけど
- 995 名前:デフォルトの名無しさん mailto:sage [05/02/23 23:39:52 ]
- >>994
多分みんな作ったことあるんだろうな(笑) 俺もある。 短い文だと誤判定が多くなるねー。 いわゆる「半角カタカナ」などというものが滅んでしまえば、かなり楽なんだが。 # 正確にはカタカナのJIS X 0201の方 泥臭いけど、日本語としての特徴を使えば認識率はあがるよ。 漢字ばかりになることはないとか、ひらがなは半分以上であるとか、そういうので点数をつける。 EUC-JPとしてみれば10点、Shift-JISなら25点というふうに。
- 996 名前:デフォルトの名無しさん mailto:sage [05/02/23 23:45:39 ]
- もとの質問の対象がURL中の文字列つーのがきついよね。
- 997 名前:デフォルトの名無しさん mailto:sage [05/02/23 23:56:34 ]
- >>993 に一票
>>995 gaucheの実装がそんな感じだね。ソースも切り取りやすくてすてき。
- 998 名前:993 mailto:sage [05/02/23 23:58:43 ]
- 立てられませんでした。どなたかお願いします。
- 999 名前:デフォルトの名無しさん mailto:sage [05/02/23 23:59:22 ]
- 999
- 1000 名前:デフォルトの名無しさん mailto:sage [05/02/24 00:00:14 ]
- 1000ならunicode死滅
- 1001 名前:1001 [Over 1000 Thread]
- このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
|

|