2012-01-04 9 views
0

レーキビルドのファイルに出力する際に​​文字 "ä"に問題があります。これは、TeamCity環境変数の文字列の一部としてrakeに渡されています。それから、次のコードでファイルに出力されます:TeamCity Rake環境変数ASCII-8BITからUTF-8へのエンコーディング:: UndefinedConversionError: " x84"

output = File.new("#{path}", "w") 
output.write("#{content}") 
output.close 

文字は "" "として出力されます。

File.open("#{path}", "wt", encoding: 'UTF-8') do |f| 
    f.puts "#{content}" 
end 

を、これは

エンコーディング:: UndefinedConversionErrorエラーが発生:だから我々は試してみましたUTF-8

にASCII-8BITからは "\ X84" 提案は他の場所で使用することでしたforce_encodingは次のようになります。

f.force_encoding("UTF-8") 

しかし、これは全く文字が出力されません。

文字を正しく出力する必要があります。

答えて

2

私がこれを回避するために見つけた唯一の方法は、html/xhtmlコードを使用することです。

「ä」のものはäです。 TeamCityはファイルをASCIIコードでレンダリングしますが、ファイルを開くと正しく読み込まれます。

コードのリストについては、このページを参照してください - あなたはそれが動作するためにそれらをすべて変更する必要があります:http://webdesign.about.com/library/bl_htmlcodes.htm

関連する問題