- 1 名前:デフォルトの名無しさん [2010/03/04(木) 11:00:57 ]
- プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
★注意★ Ruby 1.9.1 は初心者にはまだ時期早尚です。初心者には Ruby 1.8.7 を強くお勧めします。 (理由:現時点では有名ライブラリやアプリが 1.9.1 に完全には対応していないためです) 1.8.7 でも 1.9 系に導入された新機能のいくつかが利用可能なため、1.8.7 を習得すれば将来スムーズに 1.9 系に移行できるでしょう。 関連スレやURLは>>2-5あたりを見てください。Ruby on Rails の質問は Webプログラミング板の Rails スレへ。 ■質問する人へ 質問する前に次の3つをすること。ここで回答を待つよりそのほうが早い。 ・モジュール名やエラーメッセージでググる ・マニュアルで引っかかったクラスの記述を探す www.ruby-lang.org/ja/man/ ・FAQを一応読む www.ruby-lang.org/ja/man/?cmd=view;name=Ruby+FAQ 質問には以下を書くこと。へたくそな質問は再提出を要求される。 ・詳しい内容(「動きません」「うまくできません」では回答しようがない) ・エラーメッセージ(自力で訳さずなるべくそのままで) ・実行環境(OS名、Rubyのバージョン(ruby -v でわかる)) ・最終的にやりたいこと(もっとよい方法がある場合が多いので) 回答してくれた人には「ありがとう」のひとことをいってあげて。 ■回答する人へ 相手は初心者、根気よく育てるつもりで。質問がへたくそなのも大目にみてあげる。 それができないならこないこと(だって初心者スレだもん)。 ・既出な質問やFAQは「XXXを読め」でいいので、叩かない&怖がらせない。 ・わけわかな質問にもエスパー発揮で。できれば質問の仕方を教えるぐらいで。 ・自信がない回答ならその旨表明すること。誤った回答は初心者じゃ見抜けない。
- 52 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 10:52:06 ]
- >>50
Rubyはそのへんただのメソッドで、各々のクラスのメソッド定義で動作が自由に変わる それぞれのクラスのそれぞれのメソッドのマニュアル読め 一般的には euqal? は Object#equal? そのままで ObjectID の同一性を比較する eql? は多くの場合 Object#eql? そのままで「オブジェクトのハッシュ値」の同一性を比較する オブジェクトのハッシュ値は Object#hashで、再定義されることも多い(通常は ObjectID) == は多くの場合クラスごとに再定義され、そのクラス固有の同一性判定(「意味上同じっぽい」かどうか)を行う a = URI.parse("example.com/") と b = URI.parse("EXAMPLE.com/") は object_id が違うので equal? は偽を返す eql? は #hash の値が内部表現の配列の hash に再定義されてて、 内部配列的にはハッシュ同等ではないので真を返す ['http', 'example.com', '/'].hash == ['http', 'EXAMPLE.com', '/'].hash が偽 == はこれも再定義されてて、ホストが大文字でも小文字でも規格上は同一とみなさなければならないので そのように細工された上で何らかの手段で比較されて真を返す というわけで、Rubyではその手の問答は向かない
- 53 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:00:57 ]
- >>50
原文を参照すると、 equality と equivalence の違いを問われているんだけど、 これ数学的な話なのかねえ。 Ruby的にはともかく、数学的には x ※ x であり(反射律) x ※ y であるとき y ※ x であり(対象律) x ※ y かつ y ※ z であるとき x ※ z である(推移律) ような関係 ※ を equivalence という。 equality はそのうち通常等号(=)で表される(相等)関係。 他の equivalence の例としては、 「整数の世界で、nで割ったときの余りの等しさ」とか、図形の 「合同」(形のみ。向きは考えない) 「相似」(加えて比率も考えない)とか。
- 54 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:07:58 ]
- >>53
やっぱ原文たどったよな これ日本語に訳した人が悪いわ
- 55 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:09:39 ]
- >>52
> eql? は #hash の値が内部表現の配列の hash に再定義されてて、 > 内部配列的にはハッシュ同等ではないので 偽を返す、だな
- 56 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:24:31 ]
- 個々の実装による、で一蹴されるものがいくつか…
- 57 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:26:32 ]
- 要するにRubyでequalityの意味を問うのはナンセンスで、
equalityとequivalenceの違いがわかるというのは数学的な素養が あるか否かを見極める質問という感じですかね。
- 58 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:28:49 ]
- 元の記事的には、単に計算機科学の質問をすればいいだけだと思う
あとは「ファイルコピーの関数を書いて欲しいが何か質問は?」と聞く
- 59 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:37:00 ]
- 原文見てきた
いわゆる等価と等値の区別がつきますか質問でしかないようだが なんで数学とかよくわからん話になってるのん
- 60 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 11:40:34 ]
- >>59
日本語での等価と等値がおおむね一緒だからだよ
- 61 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 13:14:07 ]
- 原文が identity と equality なら簡単な話だったんだがな。
- 62 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 02:46:26 ]
- その辺は元々区別してない日本人教祖の致命的な弱点かもな。
- 63 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 03:08:27 ]
- 直接の元ネタは Common Lisp かね?
ただ、Rubyの場合はオブジェクト指向的な整理がされているし それぞれの述語の意味も違う
- 64 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 03:19:41 ]
- 質問なんですが、Ruby[Cygwinで時前コンパイル]のスクリプトをOcraで実行ファイルにしたとき、
できた実行ファイルにはCygwinのDLLがなにやら色々入ってないみたいなんです。 Ocraで実行ファイル作成時に出るDependencyリストにも無いファイルが無いというエラーが作った実行ファイルから はかれるんですが、どうやったら調べられるのか、どのCygwinのDLLを同じフォルダにコピーしたらいいのか、 しってはるひといらはりますか?
- 65 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 04:31:33 ]
- たのしいRuby 第3版
ttp://www.amazon.co.jp/gp/product/4797357401/ 3月31日発売
- 66 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 05:45:46 ]
- irb上で、
>REXML::Parsers::StreamParser.new('日本語', listener) Encoding::CompatibilityError: incompatible character encodings: ASCII-8BIT and UTF-8 となるのですが、バグですかね? 環境:fedora10、ruby 1.9.2dev (2010-03-06 trunk 26825) [i686-linux]
- 67 名前:66 mailto:sage [2010/03/06(土) 05:48:31 ]
- すみません。fedora11でした。
- 68 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 08:39:10 ]
- rubyにXMLパーサーある?
- 69 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 09:05:45 ]
- あるよ
REXMLとかXMLParserとか。それぞれ向き不向きがあるので、とりあえず触ってみると良い。
- 70 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 09:11:43 ]
- >>66
REXML::Parsers::StreamParser.new('<?xml version="1.0" encoding="utf-8"?><xml>日本語</xml>', nil) これは通る。 xmlのエンコーディングってどうやって省いたときはどうなるのが 正しいんだっけ……
- 71 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 09:25:14 ]
- www.w3.org/TR/xml/#charencoding
BOMもエンコーディング宣言もなければ 文書はUTF-8で書かれているものと想定するだろね
- 72 名前:66 mailto:sage [2010/03/06(土) 10:30:08 ]
- レスありがとうございます。
>>70 考えてみれば、XMLではない文字列を通す必要は無いんですね。 1.8では通ってたので、勘違いしちゃいました。
- 73 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 10:45:37 ]
- とはいえ、エンコーディング検出処理のところで read(2)で 2*文字*
読んでるのは間違いのような気もするな。識者求む。 rexml/source.rb class IOSource#initialize
- 74 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 10:55:28 ]
- ソース見てないけど2バイトじゃなくて2文字読んでるから
BOMの判定としてどうなのってこと? 1.9はめんどくさいね 関連でこういうのも www.clear-code.com/blog/2009/5/11.html
- 75 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 11:03:07 ]
- >>65
こういう新刊情報ってどうやって入手してるの? ソフトバンククリエイティブの新刊情報にはまだ出てないし、 amazonでも検索に引っかからないし googleの検索結果にはかろうじて出てくるから キーワードをダイレクトで指定してそれを スクリプトか何かでチェックしてるのか?
- 76 名前:デフォルトの名無しさん [2010/03/06(土) 11:10:55 ]
- ちょ、著者じゃないよ!
出版社でもないからネ.
- 77 名前:デフォルトの名無しさん [2010/03/06(土) 11:13:44 ]
- アマゾンの回し者だな
- 78 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 11:16:36 ]
- >>74
めんどくさくねえよ むしろ1.8のほうが「2文字」読み込むのに難儀する 2文字読むのと2バイト読むのとメソッドがきちんと分かれてる1.9のほうがわかりやすい 添付なんだし誰か突っ込んどけという説はあるな REXMLなんて使ってる人いないんだろうなという感じの
- 79 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 11:49:54 ]
- >>69
ありがとう。使ってみる。
- 80 名前:デフォルトの名無しさん [2010/03/06(土) 12:09:16 ]
- 著者降臨age
- 81 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 15:21:58 ]
- gemのインストールで困っています。
searchでは見える&installでは見えないという状況です。 % gem search -r rubyzip *** REMOTE GEMS *** rubyzip (0.9.4) rubyzip2 (2.0.1) viva-rubyzip (0.9.1.2) % gem install rubyzip ERROR: could not find gem rubyzip locally or in a repository ほかのgemでも同じ状況でした。 環境はFedora12 on VirtualBoxです。
- 82 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 18:40:48 ]
- rubyでAPIを処理できますか?
- 83 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 18:45:42 ]
- >>81
ブツは gems.rubyforge.org/gems/rubyzip-0.9.4.gem にある ようだな。とりあえず gem install --verbose rubyzip >>82 どの?
- 84 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 19:10:31 ]
- windowsAPIです
- 85 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 21:33:00 ]
- >84
www.ruby-lang.org/ja/man/html/Win32API.html これでいいのか?
- 86 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 21:54:25 ]
- ruby を使って windowsで 簡易ブラウザを作りたい
と思っているんですが簡単に実現出来る方法はないでしょうか? Linux環境だとgnome2つかって下記のように簡単に作れるみたいですが・・・・ alohakun.blog7.fc2.com/blog-entry-809.html
- 87 名前:デフォルトの名無しさん [2010/03/06(土) 22:29:20 ]
- >>86
すげぇw
- 88 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 22:33:59 ]
- >>81
install 時も -r を付ければいいような気もしますが、どうですか?
- 89 名前:デフォルトの名無しさん [2010/03/06(土) 22:55:48 ]
- >>86
ブラウザって方法次第ではこんなに簡単に作れるのか・・。Rubyブラウザいいねえ
- 90 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 23:05:10 ]
- GUIライブラリだけでRuby関係ないんだが
- 91 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 23:07:31 ]
- Trident使うライブラリってMFC以外にあんの?
- 92 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 23:23:48 ]
- IEコンポーネントとして呼べばいい
Tk→OpTcl→InternetExplorer どっちにしてもRubyの関わる分はたいそう少ない
- 93 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 00:38:05 ]
- >>86
win32oleでIEコンポーネント操作すりゃいいんじゃないかね。 前にC#でやったことがあるが、COMがわかってりゃ別段困難ではない。
- 94 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 00:42:46 ]
- COM/Interopがわかってるような人間はこのスレで質問するわけがない
- 95 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:10:25 ]
- これから言語の勉強しようとしているのですが
RubyでGUYツール作れますか? C#のようにマウスでコントロール配置できたりしますか?
- 96 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:11:25 ]
- まず言語とIDEの区別ができるようになろうな。
- 97 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:16:47 ]
- GUYツールワロタ
- 98 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:25:56 ]
- RubyでGUI用のIDEはありますか?
- 99 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:33:05 ]
- ないんじゃない?
ttp://jp.rubyist.net/magazine/?0001-RubyGUI#l10 この記事の内容って今も大きい変化ない?
- 100 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:38:58 ]
- IDEといえば、CodeGearどうしたのかと思ったらDBツールの会社と
合併して、今は3rdRail以外にTurboRubyなんての出してたのね。
- 101 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:41:30 ]
- 見た感じ3rdRailと同じようにEclipseのプラグインぽいなー
と思いつつ機能一覧を見たら、3rdRailからRails関連を取っ払っ た感じだった。
- 102 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:42:30 ]
- Turboなんとかって命名には不吉な匂いしかしない
- 103 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:46:25 ]
- 今はDelphiもそこの製品扱いなのか……
- 104 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 01:53:11 ]
- 勉強のためならGladeでいんじゃね?
コードエディタとかついてないとイヤなの?
- 105 名前:デフォルトの名無しさん [2010/03/07(日) 02:04:21 ]
- C#用のIDEってそんなこと出来るのか
- 106 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 02:06:42 ]
- ホームページビルダーみたいな出力だったらいやだな
どうなんだ
- 107 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 02:20:37 ]
- wxRuby+wxFormBuilderでも使っとけ
- 108 名前:デフォルトの名無しさん mailto:sage [2010/03/07(日) 02:27:29 ]
- >>107
いいねそれ 遊んでみよう
- 109 名前:デフォルトの名無しさん [2010/03/07(日) 07:04:30 ]
- >>81
こちらでは問題なくインストールいけたが Ubuntu 9.04 on coLinux
- 110 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 11:29:43 ]
- >>86
遅いレスだが情報サンクス 半信半疑でやってみたがあっさり動いた(Ubuntu9.04) おもしろいね
- 111 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 12:48:25 ]
- この言語はどういったユーザーを主に対象にしているんでしょうか?
ぐぐってみるとWebアプリケーションとのことだけど Windowsデスクトップアプリを主に作る場合はおすすめできないですか?
- 112 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 12:52:12 ]
- >>111
> Windowsデスクトップアプリを主に作る場合はおすすめできないですか? 1ミリもおすすめできません とても大雑把には C# で試してみることをおすすめします 物足りないなら他の Java なりなんなりを使えばよろし C# で挫折しないなら他の言語も我慢できましょう
- 113 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 13:51:13 ]
- Rubyの初心者向け的立ち位置って微妙だよね
このご時世にコンソールアプリケーションが基本とか華がないにも程がある 得意分野が狭いからわかりやすいんだけどさ これでデフォルトでウィンドウ制御しないといけないとかだったらめんどくて吐く
- 114 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 14:18:23 ]
- しつもん
freeze って実際はどんなときに使うの? マニュアル読まない人用? あと、TypeError という汎用な例外が出るのはなんで? ModifyFrozenObject とかそういう特有の例外ならよかったのに
- 115 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 14:32:39 ]
- >>111
いろいろな使い方があると思うけど 俺は簡単な書き捨てスクリプトに主に使ってる ファイルの名前を書き換えたりとか,複数のファイルからデータ 抽出してまとめ直すとか,ファイルのデータフォーマット変えるとか そういうのを大量に行いたい時使うこと多い C++とかで書いても良いけどこういうのはrubyの方が楽 逆に手の込んだもの書く時はC++の方が楽というか安心 単に慣れの問題かも知れんが
- 116 名前:111 mailto:sage [2010/03/08(月) 14:43:33 ]
- 調べてみたところ、LL系とコンパイラ系の両方1つづつ
覚えていると良いらしいので簡単だと言われている RUBYをやってみようと思ったのですが 実際どういう感じで使われているのかがよくわからなくて 質問させていただきました WEBアプリを作ることはまずないんですが >>115さんのようなことができるならちょっと興味があります
- 117 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 14:50:22 ]
- >>116
やめとけ 君の考えているようなものではない
- 118 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 15:00:05 ]
- >>114
例外について。 あまり例外の階層構成については細かく考えられていない。 現在TypeErrorを返している一部はArgumentErrorを返すべき(逆だった かも)といった指摘も現在進行形で存在する。数学のほうの例外 体系もErrnoとは分けて作るような動きがあったかな。
- 119 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 15:05:13 ]
- >>117
使ってるの普通にWindowsだろうしな コマンドプロンプトの使用の概念から慣れていかないと RubyがLinuxやらCGIやらと親和性が強くて便利だと言われる理由は 「普段使ってるもの」をRubyスクリプトで直接パワーアップさせることができるから 普段からコンソール使ってコマンドラインプログラムを利用してるLinuxやCGIなんかの場合は Rubyで作ることができるものがそれそのものと同種のものだから、即取り入れることができる それこそ、覚えた日から即生活が豊かになる しかしWindowsは違う ごく一般的にはウィンドウアプリケーションじゃないとどうにもならん そして、それは「Rubyを使うべき分野」ではない(苦行の趣味に近い)
- 120 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 15:09:45 ]
- Windowsでプログラミングしたことない、、一度も。
- 121 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 15:51:30 ]
- 俺もWindowsはないな。MS-DOSはTurbo PascalとSmalltalk/VとModula-2ぐらいだな。
- 122 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:12:21 ]
- >>116
Rubyがそれほど簡単だとは思わないけど。
- 123 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:35:37 ]
- 簡単かどうかで言えばかなり簡単な部類
ただし、プログラミング初心者には難しい リアル師匠にあたる人がいればなんてことないが、これはどの言語でも同じか Perlは基本がわからないわけではないんだがなんともいえず挫折した、とかいような素養で充分なんだが それに該当するものをRuby単体独学で身につけるのは意外と辛いしRubyの役目かどうかもちと怪しい
- 124 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:40:59 ]
- 中学生に EPSON BASIC(中古・マニュアルのみ) → 大学で Perl4 → KENT CGI(笑) → うーんなんか違う
という経緯をたどった俺には Ruby はどんぴしゃべったりで一生もの 「ちょっと遅いけどでも許す」ということを本当に口に出して言ったことをよく覚えている Ruby1.4 くらいだったかなあ
- 125 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:43:45 ]
- どんな顔か想像ついたw
- 126 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:44:39 ]
- ブラック会社みたいな物言いだな> 他の言語で基礎素養を身につけた方歓迎
- 127 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:48:07 ]
- >>126
めっちゃ平たく言うと完全初心者を歓待するためのドキュメント準備がない こんなとこでもいまだに適切な分野の人員不足が足引っ張ってる状態 書籍ならなんとかなりそうな気もするんだが、オンラインでもある程度あったほうがいいよね PerlとかPythonとかはnewbieを扱うための準備をかなり前からしてる Rubyはどっちかってと「わかってる人向け」で突っ走ってきたので
- 128 名前:111 mailto:sage [2010/03/08(月) 16:51:19 ]
- インストールで挫折した
ネットも繋がないといけない?ようで気味悪いので削除しました 皆様ありがとうございました
- 129 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:53:59 ]
- よーしrubyのためにwindows消して
ubuntuいれちゃうぞー
- 130 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 16:57:52 ]
- パパやめて!Windows消すぐらいならVMwareかVirtualBox使って!
- 131 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 17:01:47 ]
- もともと持ってないならまだしもわざわざ自分から捨てるような権利でもないな
というかそのへんは本スレでやれ
- 132 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 18:34:28 ]
- Ruby が簡単かどうかは >>119 さんもが書いているいるように
それまでの慣れや経験に依るだろうね Unix, Linuxを使って来てシェルスクリプト,sed, awk 等 使ってきた人間だと簡単に感じる 本一冊(hunt/thomas)通勤中読んでいたらすぐに簡単なものは書けるようになった 確かにターミナル使ったことない人にはわかりにくいだろう
- 133 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 19:09:23 ]
- つまり新しい言語に対応できない無能なおっさんが
いきついた場所がRubyということですね
- 134 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 19:14:54 ]
- >>133
真面目にそんなこと言っているのだとしたら、そうとう恥ずかしいぞ。
- 135 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 20:32:51 ]
- 真面目じゃなくても恥ずかしいわw
- 136 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 20:36:12 ]
- 今時、小学生でもLinuxでサーバ構築できるというのに...
- 137 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 22:47:11 ]
- ここほど口だけ出来る奴が居座ってる初心者スレは無いよな。
- 138 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 23:07:40 ]
- そんなことを言っても出せないものは出してあげられませんよ
- 139 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 23:12:27 ]
- 逆に貧相なCMD.exeでもRubyで花を咲かせることができる
windowsユーザーだってRuby使ってるぜ
- 140 名前:デフォルトの名無しさん mailto:sage [2010/03/08(月) 23:49:53 ]
- でも根本的に向いてない。
教祖自らウィンドウズ使ってないしねえ。 教祖と同じデビアンから入信してみるのがいいんじゃ? まあシェルでまずは挫折して逃げ出すと思うが。 pc11.2ch.net/test/read.cgi/linux/1267107714/ Debian GNU/Linux スレッド Ver. 63 pc11.2ch.net/test/read.cgi/linux/1154631461/ Debian原理主義者テラモエス
- 141 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 00:03:36 ]
- 逆に、WindowsでRubyをバリバリに使ってる人ってガチガチに独自の快適コンソール環境を構築してそうだよなあ。
- 142 名前:デフォルトの名無しさん [2010/03/09(火) 00:42:22 ]
- ある課題があって、それをRubyで解決したいのですが御知恵を。。。
課題というのは、仕事でつかってるIBM系のメインフレームのデータセット? という1レコード3Kbyte程度のバイナリファイルをFTPでおとしてきて 読み込み加工して出力し、またメインフレーム上に戻す(できれば)という ものです。 そのバイナリファイルとは別に、項目名と、その項目の値は何バイト目から 何バイトがPACだ、小数点以下は何桁だ、CHARだというレイアウトファイル なるものがあります。文字コードはEBCDICというものらしいです。 このままじゃデータをエクセルに落して、手作業でやらされる羽目になります。。。 どう料理していけば良いでしょう?
- 143 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 00:44:40 ]
- どう加工するかによるだろそりゃ。
バイナリファイルの扱い自体は別に困難じゃない。 unpackして適当に加工してまたpackすりゃいい。 問題はEBCDICの扱いになるかな。なんかライブラリあったかなあ?
- 144 名前:デフォルトの名無しさん [2010/03/09(火) 00:52:39 ]
- さっそくありがとうございます。
pack,unpackの扱いについては、このあたりで良いですか? ttp://www.ruby-lang.org/ja/man/html/pack_A5C6A5F3A5D7A5ECA1BCA5C8CAB8BBFACEF3.html
- 145 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 00:56:11 ]
- バイナリ列をバイナリのまま扱った経験がないとしたら茨の道と言わざるを得ないが
Rubyはそのへんを助けるようなことはしない
- 146 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 01:04:49 ]
- COBOLとRubyって、すごい対比だなw
金融機関の人間だけど、そういう場合は必ずいったんRDBに入れたり最悪でもCSVかTSVに変換してるなぁ。 つまり汎用機→情報系用に変換→各種処理→戻し変換→汎用機というルート。 変換にはうちはF*TRANを使ってる。 iconvとかでもEBCDIC扱えるみたいね。 データセットを直接扱うなんて、 リスクが高すぎてうちでは絶対に許してくれない。
- 147 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 01:17:23 ]
- 質問に?が多すぎ。
バイナリ、とは言うが、実はASCIIの文字列かいな。 .txt の処理は、Rubyだとより柔軟にできる訳だが、今からでは、間に合わないでしょ。 SEDとか、AWKのスクリプトも書けないのか、それともそんなものも知らないのか。 おそらく、今から勉強しても間に合わないから、あなたの得意なエクセルで作業をスタート。 あとは、時間との勝負。 だな。
- 148 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 01:19:28 ]
- F*TRANって、FORTRAN?
なんで伏字にするの?
- 149 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 01:24:45 ]
- FORTRANに嫉妬しているから。
- 150 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 01:33:02 ]
- >>148
www.bsc.fujitsu.com/services/ftran/
- 151 名前:デフォルトの名無しさん mailto:sage [2010/03/09(火) 01:34:01 ]
- c#なら10行書けば済む処理だな
- 152 名前:149 mailto:sage [2010/03/09(火) 01:41:46 ]
- それは、知らんかった。
音(的には)P-TOSのなんとかに似ているね。
|

|