入力ファイルがUTF-8でない場合
SJISと判断してUTF-8に変換
SJISと判断してUTF-8に変換
#!/usr/bin/env ruby
# encoding: utf-8
class String
def utf8?
unpack('U*') rescue return false
true
end
end
f1 = '/Users/keyes/Desktop/utf8.txt'
f2 = '/Users/keyes/Desktop/sjis.txt'
pfs = [f1, f2]
pfs.map! do |f|
if File.open(f).gets.utf8?
File.open(f, 'r')
else
File.open(f, "r:sjis:utf-8")
end
end
pfs.each do |pf|
puts pf.read
end
No comments:
Post a Comment