[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 23:11 / Filesize : 205 KB / Number-of Response : 981
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Rubyについて Part 34



1 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:34:28 ]
オブジェクト指向スクリプト言語Rubyについて扱うスレッドです。

Ruby Home Page
www.ruby-lang.org/ja/

= 前スレ
Rubyについて Part 33
pc11.2ch.net/test/read.cgi/tech/1223709050/

過去スレ・関連スレは >>2-

449 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:22:32 ]
NTTはエヌティーティーなの?

450 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:26:20 ]
いいえ、みかかです。

451 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:32:20 ]
>>444
ライフスタイルの記事だからコンピュータを知らない人向けだな。

452 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:35:49 ]
>>451
まあ、日本産のコンピュータの言語が日本の自治体でコスト削減のために使われてます、という話以上の何物でもないな
> 広く使われている『JAVA』などでは前置きがたくさん必要だったが、
> ルビーはやりたいことを書けばシステムが面倒を見てくれる仕組みを作り、最も成功した。
> 書きやすいから生産性も高い
という教授さんの説明(の勝手要約?)は苦難の痕が垣間見える

453 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:47:21 ]
これ読んで「じゃあ我が社もルビーで」となる会社がないことを祈る
「うちのあれがルビーで間に合いそうだな」という分業のなら歓迎だけど、そんな判断できる人はレアだろうな

454 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:52:50 ]
こんなの言っちゃう想像力ない人がいるうちはたいしたことない
ttp://d.hatena.ne.jp/rubikitch/20090225/1235524238

455 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 12:56:18 ]
>>454
新聞ではカタカナで書くのが普通なんだっけか
「ルビー(Ruby)」ならまあ怒ってもいいが、最初に「Ruby(ルビー)」と断ってるなら別にいいじゃんね
この人の普段のRubyの呼び方がちょっと気になる
きちんと英単語として発音してくれてるのかしら

456 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:06:50 ]
rubyの発音はカタカナで書くとルービィだからなあ
ttp://dictionary.goo.ne.jp/search.php?MT=ruby&kind=ej&mode=0&base=1&row=1

あーじゃああれだ、ルビーって読んでる人は今後は背教者ってことでひとつ

「ルビー1.9の特長は…」
「違います、ルービィです。るー(巻き舌)ビィ」
「…」

457 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:10:21 ]
発音記号をカタカナにすると「ルゥービ」が近いかな?
まあ英語でも地域によって訛がすごいし日本では「ルビー」でええやんと思う



458 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:20:16 ]
オフィシャルで読み方書いてないのがな
書き方はRubyで読み方はルビーですが、ルビーとカタカナで書くのは言語呼称としては認めません、みたいな
識別子としてひらがなカタカナを認めてないって意味だろ、要は

459 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:25:18 ]
>>454
想像力ないのは記事書いた方だろw
あるいは読者レベルを勝手に想定したか。

460 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:33:43 ]
読者のレベルとか関係なく、新聞では固有名詞でも基本的にカタカナ表記するの。

461 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 13:44:07 ]
ルビーの設計図って読みづらいから好きじゃないよ

462 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 14:02:31 ]
windowsでユニコードファイル名でファイルにアクセスできないの、1.9系では直ってる?

463 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 14:04:10 ]
JavaがJAVAだから気になるという話なんじゃないの

464 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 14:04:32 ]
>>462
まだらしいよ

465 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 14:11:08 ]
>>462
現行の1.9.1でも無理
1.9.2で直る予定って言っておけばプレッシャーになるかも

Pythonではうまくいくんだよね
なんかgemとかで誰か作ってないだろうか

466 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 14:11:14 ]
redmineにチケットあったっけ

467 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 14:14:37 ]
>>465
さすがWindowsにやさしい言語だなPython



468 名前:デフォルトの名無しさん [2009/02/25(水) 15:11:22 ]
>ルビーのようなプログラミング言語は、
>ソフトウエアの設計図に当たる
>ソースコードを記述するための言語だ。

なんか違和感ある文章だな

469 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 15:11:39 ]
Railsの100倍コード量少なくAjaxアプリケーションが作れるJavaフレームワーク「AribaWeb」
www.moongift.jp/2009/02/aribaweb/#more-13692

470 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 15:27:59 ]
るびきちさんはruby界では叩きやすさno.1だからな

471 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 15:38:15 ]
>>470
だからるびきちがたわいもないこと言ってもこの住人は叩こうとするわけだ

472 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 15:50:50 ]
>>470の皮肉に気づけるかどうかの差は大きいと思う

473 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 16:59:27 ]
MLもIRCも離れこのスレに隠遁する上級Rubyユーザは当然ながら皮肉に気付いているわけで

474 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 17:20:52 ]
rubyにルビをふる

475 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 17:31:05 ]
で?っていう

476 名前:デフォルトの名無しさん [2009/02/25(水) 20:45:12 ]
どうしてルビがrubyでルビと言われるようになったのはなぜ?

477 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:47:29 ]
>>476
も一度どうぞ



478 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:56:06 ]
おっぱい!

479 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:58:10 ]
マジレスするともともとは「るばい」だけどな

480 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 21:01:37 ]
増山江威子ボイスで再生されますた

481 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 21:06:58 ]
Ruby玄徳

482 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:22:32 ]
>>444
中田育男・筑波大名誉教授って、
コンパイラに関していろいろ本書いてる人だよね。


483 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:25:12 ]
>>476
活字の大きさの呼び名が宝石シリーズだった。
たまたま、ふりがなに使うサイズがRubyという名前だった。


484 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:25:57 ]
コンパイラほどつまらない研究分野はないと感じた大学時代

485 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:27:40 ]
言語処理系制作にハマるマは割と多い気がする

486 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:05:12 ]
研究と制作は大体別物だよな

487 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:06:48 ]
処理系製作は楽しいんだが、実用レベルまでライブラリ群を作りこむのがめんどくさすぎてやってられない。



488 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:08:34 ]
新聞の部数減って国民が馬鹿だから新聞を読めないのだと決めつけて
その対策でゆとり表記が蔓延しつつあるからいちいち突っ込んでもしょうがない。

489 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:17:19 ]
学生の研究程度でできるような部分はもう掘り尽されてるって印象がある

490 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:20:25 ]
ゆとり表記ってなんだ

491 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:21:11 ]
日本の大学生の卒論って他人が見ても全く面白くないよね。
頭は良いはずなのにどうして皆同じことやってんだろね。

492 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:23:13 ]
妄想乙

493 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 01:41:23 ]
>>488
>新聞の部数減って国民が馬鹿だから新聞を読めないのだと決めつけて

そこはあながち間違ってないと思う


494 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 13:18:10 ]
まあ、国民が新聞を読めないかどうかはともかく
新聞をわざわざ買うのが馬鹿らしいからというのが一番の理由なんだが。

495 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 13:33:55 ]
10年新聞読んでないな

496 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 14:54:36 ]
新聞を買うのは折込広告のチラシの割引目当てとか抜かす販売員もいたが
月3000円から出して元取れるのかと問い詰めたら帰っていった

497 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:53:34 ]
チラシで月3000円の元は十分取れる。ニートはそんなこともわからんのかね。

食料品・日用品を月6万使ってるとしたら5%。
ネットで安売りの情報を出さないような店が多いところなら効果的だろうな。
その販売員は教えられたとおりに言ったんだろうがバカだなあ。



498 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 15:58:36 ]
職場に新聞置いてあるからそこで読むけどな

499 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 16:00:28 ]
>>497
チラシの割引ってそんなに付いてるか?使うか?
近所のスーパーなんかでチラシ持って行かないと割り引いてくれないとか無いが。
よくあるのは紳士服とかだけど、毎月そんなに買わないし、その店に行くかどうかすら不定。

まあ新聞の勧誘が常識の範囲内の言動になって久しいとはいえ、未だ悪い印象しか
持ってない人も多いし、しょうもないことをグダグダ言ってたら追い返されても仕方ない

500 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 16:54:29 ]
>>499
クーポンしか頭にないからニートって言われるんだろw


501 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:12:16 ]
これが・・・ Rubyスレ・・・

502 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:20:52 ]
496がニートには見えないけど
497がものすごい下層階級なのは感じる

503 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:26:55 ]
チラシに出てるものをチラシ頼りに超お得に買える人間ってけっこう限られるよね

504 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:27:48 ]
そろそろスレタイ見ようぜ

505 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:28:18 ]
プログラムでもサーバーの性能がいいからといって、
リソースを使いまくるプログラムはだめだよな。
全体も重要だがちょこちょこ気を遣って効率よく&節約しないと。
特にRubyは元からスピードの点ではハンデがあるわけだし。

と、まとめてみたがどうだ?

506 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:30:05 ]
>>503
まあ、おおむね無職だな
フレックスタイムで10時は買い物で昼から出社とかいう人も
郊外型大規模店舗で夜10時でもらくらく豊富にお買い物とかいう人もそりゃいるだろうが
議論に乗せられるようなもんではないだろうね

507 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:33:11 ]
Ruby(笑)



508 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:33:12 ]
>>505
そんなことはない。今はCPUもメモリもHDDもアホみたいに安くて大容量で
速いんだし、変な最適化をする必要はない。ま、速さはちょっとぐらいは
速くしたほうがいいけど、メモリ使用量に関してはまったく気にすることはない。
ジャブジャブ使っていいよ。

509 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:38:14 ]
>>508
そう思ってた時期がおれにもありました

510 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 17:47:22 ]
演習問題レベルのプログラムならともかく、まともなアプリを組もうとしたら
言語仕様の範囲だけで出来る言語は無いからなあ。
・目的に合ったライブラリを持ってるか?
・カット&トライがすぐ出来るか?
C、Javaで事足りるアプリでのスピード競争は無意味だよ。

511 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:07:45 ]
>>502
そうか?どっちも下層階級にしか見えん

512 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:16:06 ]
さて、
チラシを順次スキャンして、
画像処理してOCRなどを行い、
お得情報を統計的にまとめ、
スーパーマーケット間の移動をTSP問題のごとく解いてくれる
プログラムをRubyで書くか。

513 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:31:06 ]
>>512
JPEG画像から商品名と価格をスキャンするのが死ぬほど難しいというアドバイスだけしておく
PDFが提供されてるサイトなら簡単かと思ったがそんなことはなかったぜ

514 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:35:22 ]
チラシ画像の新着のチェックとダウンロードだけ自動でしておいて、
実際の内容は10秒くらいかけてローカル画像を目視するというのが一番面倒がないという結論に達した

515 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:45:12 ]
>>510
Rubyが遅いと言われるというか実際に遅いのの半分は
起動時間とライブラリロード(読み込み&解釈)にかかる時間だったりする
だから、起動してちょこっと処理して即終了というプログラムはRubyは「不利」
本編の処理時間を速くすれば速くするほど相対的に初期時間に足を引っ張られる

516 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:54:43 ]
そこでMVMですよ

517 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 18:59:37 ]
ディレクトリを巡回してすべてのファイルリストを取得してみたいなコード書くと普通に激遅だけどな。
字面が好きだから使ってるけど過度の柔軟性は害でしかない。



518 名前:デフォルトの名無しさん [2009/02/26(木) 19:06:33 ]
>>517
それって言語とかの問題じゃなくて、I/Oが律速になってるだけでね?

519 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:06:55 ]
まあ、複数言語を使いこなしてる者は適材適所でやってるから、xxは遅いからダメ、とはわざわざ書かないだろうな。
Rubyの場合、DSLを組みやすいから目的別の実装(ネットワークに強い、DB周りが充実など)が多いのもあって
「これ1本でオールマイティ」と説明しにくいところはある。
C、Javaを使ってても、やはり似たような所があるが、実装が多いからというより、相性問題で欲しい組み合わせが
なかなか組めないのが悩ましい。

520 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:08:29 ]
ただし、Pythonはこれ一本でオールマイティです

521 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:10:44 ]
>>520
Pythonのダックタイピングに惚れたw


522 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:32:38 ]
RubyってPythonとPerlのパクリなんでしょ?

523 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:38:05 ]
LispとCLUとSmalltalkのパクりだよ

524 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:47:36 ]
再帰遅い

525 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 20:05:05 ]
sprintfの書式指定みたいなのってどうすればいいですか


526 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 20:13:12 ]
つ ttp://doc.loveruby.net/refm/api/view/method/Kernel/m/format

527 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 20:32:24 ]
>>524
末尾再帰を使ってる?




528 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 20:43:42 ]
>>511
「にしか見えない」時というのは大抵
「そう見たいから他の可能性を無意識的に枝刈りしてる」時だよ。

529 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 21:50:15 ]
別の話題に移ってるのにいちいち穿り返すなよww
空気読めない典型的な子だな

530 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 22:19:58 ]
「いちいち〜するなよ」というレスを「いちいち」書き込む子ってよくわからんな。
なんで自分はノーカウントなんだろ。
自分も世界の一部であることを忘れた物言いって、オタクの語りに多いけどね。

531 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 22:21:15 ]
ML見てPerl大丈夫かと不安になった

532 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 22:38:52 ]
>>531
詳細

533 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 22:44:55 ]
> /usr/local/lib/ruby/1.9.1/net/https.rb:102:in `require': no such file to load -- openssl (LoadError)

あああああああああああしまった SSL 有効の指定忘れてたああああああああ
また何時間もかけて ruby1.9.1 を make する仕事が始まるお…

534 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:16:40 ]
checkinstallで入れろよ

535 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:25:06 ]
あるあるw

536 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 00:59:11 ]
>>533
PentiumII?

537 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 01:31:05 ]
しつもん。
Ruby1.9.1でNet::HTTPでHTMLを取得した場合、それのEncodingって何になるの?
ttp://jp.rubyist.net/magazine/?0025-Ruby19_m17n#l65
にある、
> IO は前述の外部エンコーディングと内部エンコーディングの設定の有無を見て、
> 読み込んだ文字列や書き込む文字列を変換したりエンコーディングを設定したりします。
の動作に依るの?



538 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 02:20:02 ]
HTTPのボディはテキストとは限らないよね。

irb> res = Net::HTTP.start('www.yahoo.co.jp', 80) {|http|
http.request(Net::HTTP::Get.new('/')) }
=> #<Net::HTTPOK 200 OK readbody=true>
irb> res.body.encoding
=> #<Encoding:ASCII-8BIT>

# まぁ、これは text/html なんだが。

レスポンスヘッダ見てテキストだったら、
ユーザーがボディをforce_encodingせよ、なのかな。






539 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 02:40:10 ]
Net::HTTP#get したものと open-uri で read したものの encoding って違うんだよね

#!ruby1.9
#coding=utf-8
require 'net/http'
require 'open-uri'
uri = URI.parse('www.yomiuri.co.jp/') # Shift_JIS/CP932

html1 = Net::HTTP.start(uri.host, uri.port){|http| http.request(Net::HTTP::Get.\
new(uri.path))}.body
sleep 1
html2 = uri.read
sleep 1
html3 = open(uri).read

p html1.encoding, html2.encoding, html3.encoding

けっか

#<Encoding:ASCII-8BIT>
#<Encoding:ISO-8859-1>
#<Encoding:ASCII-8BIT>


540 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 02:55:42 ]
>>539
Encodingってそもそもなんだっけって感じだな
ユーザーが内容を知らないファイルを読み込むということには対応してない概念なのか

でもこれで困ることって特にないよね?
これまで同様に NKF.guess で文字エンコード情報取り出せばいいよね?

541 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 06:02:24 ]
勝手に変換されて壊れるよりまし

542 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 07:00:38 ]
>>539
Ubuntu8.04 でやってみた。
ruby1.9は余り使わないんで問題ないが、1.9と、1.91では挙動が違うようだ。

% ruby1.9 -v
ruby 1.9.0 (2007-12-25 revision 14709) [i486-linux]
% ruby1.9 0227.rb
#<Encoding:ASCII-8BIT>
#<Encoding:ASCII-8BIT>
#<Encoding:ASCII-8BIT>

% ruby1.9.1 -v
ruby 1.9.1p0 (2009-01-30 revision 21907) [i686-linux]
% ruby1.9.1 0227.rb
#<Encoding:ASCII-8BIT>
#<Encoding:ISO-8859-1>
#<Encoding:ASCII-8BIT>


543 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 10:59:56 ]
そういえば、最近ちょっとハマったんだけど
ruby 1.9.1 では初期値空の StringIO にも外部エンコーディングが適用されるんだな

Encoding.default_external = Encoding.find('utf-8')
io = StringIO.new('ascii-string')
p io.read.encoding # => <Encoding:US-ASCII>
io = StringIO.new
io << 'ascii-string'
p io.string.encoding # => <Encoding:UTF-8>

文字列バッファ的な使い方してると落とし穴になる

544 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 11:04:01 ]
大体UTF-8で使ってればその辺はよしなに変換してくれるはずだろ?
CSIはUCSを包含してるはずだからなんとかできるはず

545 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 13:39:46 ]
1.9.xが微妙すぎてみんなPythonに流れ始めちゃってるな。

546 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 13:40:17 ]
ISO-8859 系と ASCII と UTF-8 しかない世界のガイジンさんが残念なコードを書くというのは一応共通認識だと思うが、
Shift_JIS と EUC-JP と UTF-8 あたりで互換が効くと思って NKF.guess ブチ込む日本人さんも同じくらいがっかりだと思った

知らないもんは仕方ないってことだあね、勉強勉強



っていうか Iconv はもうちょっと引数のエンコード文字列の制限を緩くしてくれてもいいと思うんだぜ

547 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 13:44:51 ]
>>539
ルビ1.9.1はどんだけ危険ナンダヨwww
charsetぐらい読めばいいのにwwwww



548 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 14:17:01 ]
>>547
open-uri は Content-Type ヘッダの charset トークンを内部で読んで force_encoding の引数に設定してくれる模様

require 'open-uri'
uris = %w(sankei.jp.msn.com/ dailynews.yahoo.co.jp/ b.hatena.ne.jp/ www.2ch.net/)
uris.each do |uri|
res = open(uri)
p "#{res.read.encoding.inspect}, Content-Type: #{res.meta['content-type']}"
end

results:
"#<Encoding:Shift_JIS>, Content-Type: text/html; charset=shift_jis"
"#<Encoding:EUC-JP>, Content-Type: text/html; charset=euc-jp"
"#<Encoding:UTF-8>, Content-Type: text/html;charset=utf-8"
"#<Encoding:ASCII-8BIT>, Content-Type: text/html"

Ruby1.9 の Net::HTTP はそれすらやらない、本当にプレーンな HTTP クライアントという性格に結果的になったってことだな
Net::HTTP のレベルで細かく処理されてたら確かに逆に面倒かもしれない

「HTTP ヘッダの Content-Type の charset があれば読んで設定、
それで valid_encoding? が偽なら meta タグの Content-Type を、
それでも invalid なら NKF.guess あたりの結果をブチ込み、
それでも invalid ならもうどうでもいいので ISO-8859-5 とかで流す」

という便利なんだか親切なんだかよくわからん HTTP クライアントは Ruby1.9 にこそあるべきだとは思う

あと、>>539のencodingの値はどれもほぼデフォルト値だから、
「あーこいつなんもエンコーディング処理やってねーな」と気づくことはできるぞ

549 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 14:27:50 ]
これで POST ができれば完璧なんだが
… 1.9.1 の open-uri は POST できたりする?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<205KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef