[#43494] ブロックとともに呼び出されたsortについて — "Toshiyuki Ogura" <oguradio@...>

小倉です。

12 messages 2007/05/15

[#43508] rubyのテキストについて — 桑江 康公 <ykuwae@...>

はじめまして、桑江といいます。プログラム開発の勉強をはじめたいと考えています。いろいろと調べたのですが、オブジェクト指向を使った開発が現在しりゅうとのことで、Javaを勉強しようと考えていたのですが、rubyという言語もあるということがわかりネットで調べたところこのメーリングリストにたどり着きました。どなたかプログラム開発初心者でもわかりやすい本またはサイトがありましたら教えていただけないでしょうか?ちなみに、私のレベルはHTMLが少しわかる程度です。

8 messages 2007/05/15

[ruby-list:43569] YAML.load_file

From: Five point Five <5.5@...>
Date: 2007-05-26 03:27:30 UTC
List: ruby-list #43569
はじめまして。Five point Five と申します。

YAML を使っていて不可解な現象に遭遇しました。
Windows 特有かもしれません。こちらの環境は
> ruby 1.8.5 (2006-12-25 patchlevel 12) [i386-mswin32]
です。

まず,以下のような YAML ファイルがあるとします。
改行コードは,Windows なので CR+LF です。

— sample.yaml ————————————————————
- foo,
- bar.
- baz
————————————————————————————

そして以下のスクリプトを実行します。

————————————————————————————
require 'yaml'
p YAML.load_file('sample.yaml')
p YAML.load(open('sample.yaml').read)
————————————————————————————

すると,以下のように,YAML.load_file の場合だけ "foo," の
あとに CR がつきます。

————————————————————————————
["foo,\r", "bar.", "baz"]
["foo,", "bar.", "baz"]
————————————————————————————

YAML ファイルの改行コードを LF のみにして同じ実験を行うと
"foo," のあとの CR は消えました。

スクリプトの3行目の場合,read した時点で CR+LF が LF に
なりますが,YAML.load_file だとそのへんの処理が違うのかな
あと思いました。
それにしても,行末がカンマで終わっているときとそうでない
ときで CR がついたり付かなかったりというのは解せません。

-- 
Five point Five <5.5@moji.gr.jp>


In This Thread

Prev Next