2011-02-23 77 views
1

如何用西里爾文名稱正確保存文件?用西里爾名字保存文件

現在文件名如下所示:「МаксимР-РёРЅСЏРєРЙРІfeat。Indigo - You And Me Only」。正確的名字是「МаксимЗиняковfeat。Indigo - You And Me Only」。

我從HTTP URL文件:

agent = Mechanize.new 
agent.get(url).save_as("#{mp3_dir}/#{title}.mp3") 
+0

什麼版本的紅寶石是你使用? – 2011-02-23 18:58:53

+0

我正在使用Ruby 1.8.7 – akrisanov 2011-02-23 19:04:54

+2

如果你正在處理unicode,我強烈建議1.9.2,因爲它更好。 – 2011-02-23 19:11:22

回答

0

正如有人所說,你可能需要將title字符串轉換使用iconv爲UTF-8:

require 'rubygems' 
require 'mechanize' 
require 'iconv' 

agent = Mechanize.new 
# If source encoding is indeed windows-1251, 'from' is CP1251 
title = Iconv.conv('UTF8', 'CP1251', title) 
agent.get(url).save_as("#{mp3_dir}/#{title}.mp3")