1
我有一個由刺字符分隔的CSV文件。我可以這樣做:Ruby CSV以Unicode字符分隔列
CSV.foreach(file_path, { encoding:'ISO8859-1', :col_sep => "þ" }) do |row|
但我想解析我的文件,並用unicode版本的刺分隔列。
我覺得我在正確的道路上從通話中嘗試不同的選項,如:
CSV.foreach(file_path, { encoding:'unicode', :col_sep => "U+00DE" }) do |row|
但我不出來...
我如何應在Ruby中這樣做?
感謝
你的意思是這樣的嗎? '「\ u00DE」' – phoet
看起來合法。但仍會得到「UTF-8中無效的字節序列」。應該編碼讀取別的東西? –
'unicode'不是一種編碼。這是一個標準,它定義了幾種編碼,如UTF-8(可能是最常用的),UTF-16,UTF-32和其他一些編碼。您在源代碼中如何表示'þ'只取決於您的源編碼,而不取決於CSV文件的編碼。如果你有一個編碼「魔術評論」,或者在Ruby 2.0中使用utf-8(默認的源編碼),你可以使用文字'þ'。 – matt