2005-04-09 17:03:32 +00:00
|
|
|
module REXML
|
|
|
|
module Encoding
|
2005-12-09 14:31:47 +00:00
|
|
|
begin
|
|
|
|
require 'uconv'
|
|
|
|
|
|
|
|
def decode_sjis content
|
|
|
|
Uconv::sjistou8(content)
|
|
|
|
end
|
|
|
|
|
|
|
|
def encode_sjis(str)
|
|
|
|
Uconv::u8tosjis(str)
|
|
|
|
end
|
|
|
|
rescue LoadError
|
|
|
|
require 'nkf'
|
|
|
|
|
2007-11-06 18:35:33 +00:00
|
|
|
SJISTOU8 = '-Swm0x'
|
|
|
|
U8TOSJIS = '-Wsm0x'
|
2003-12-12 21:17:41 +00:00
|
|
|
|
2005-12-09 14:31:47 +00:00
|
|
|
def decode_sjis(str)
|
|
|
|
NKF.nkf(SJISTOU8, str)
|
|
|
|
end
|
|
|
|
|
|
|
|
def encode_sjis content
|
|
|
|
NKF.nkf(U8TOSJIS, content)
|
|
|
|
end
|
2005-04-09 17:03:32 +00:00
|
|
|
end
|
2003-12-12 21:17:41 +00:00
|
|
|
|
2005-04-09 17:03:32 +00:00
|
|
|
b = proc do |obj|
|
|
|
|
class << obj
|
|
|
|
alias decode decode_sjis
|
|
|
|
alias encode encode_sjis
|
2003-12-12 21:17:41 +00:00
|
|
|
end
|
|
|
|
end
|
2005-04-09 17:03:32 +00:00
|
|
|
register("SHIFT-JIS", &b)
|
|
|
|
register("SHIFT_JIS", &b)
|
2003-12-12 21:17:41 +00:00
|
|
|
end
|
|
|
|
end
|