logo       

[ruby-list:42955] Re: CSV: msg#00016

lang.ruby.japanese

Subject: [ruby-list:42955] Re: CSV

今野です。

SAITO Shukaku wrote:
>> rs
>> 行区切り文字。nil(デフォルト)で CrLf / Lf。
>> Cr で区切りたい場合は ?\r を渡す。
>
> これを利用して改行コードを指定すると入力データの変更なしで処理できるよう
> になりませんか?

ありがとうございます。

こんな初歩的な記述を見落としていたとは、お恥ずかしい限りです。
喜んで試してみたところ、結果は NG でした。(TT;
セルの中に改行を含んだものが扱えません。


RUBY_VERSION # => "1.8.5"
RUBY_RELEASE_DATE # => "2006-08-25"
RUBY_PLATFORM # => "i686-darwin8.8.1"
------------------------------------
test.csv
1,3
2,"4
5"

require "csv"
CSV.open("test.csv", 'r') do |row|
p row
end
⇒改行コードCRで、NG!、他はok

------------------------------------
test.csv
1,3
2,4

require "csv"
CSV.open("test.csv", 'r', rs="?\r") do |row|
p row
end
⇒すべての改行コードで、ok!

------------------------------------
test.csv
1,3
2,"4
5"

require "csv"
CSV.open("test.csv", 'r', rs="?\r") do |row|
p row
end
⇒すべての改行コードで、NG!


--
今野 滋




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise