Class: JavaNative2Ascii
- Inherits:
-
Object
- Object
- JavaNative2Ascii
- Defined in:
- lib/java_native2ascii.rb
Overview
Mimics Java’s native2ascii tool
Class Method Summary collapse
Class Method Details
.ascii2native(str) ⇒ Object
5 6 7 8 9 10 11 12 13 |
# File 'lib/java_native2ascii.rb', line 5 def self.ascii2native str str.gsub(/\\u[0-9a-f]{4}/i) do |s| out = "" i = s[2,4].hex out << (i & 0xFF) out << (i >> 8) out = Iconv.conv("UTF-8", "UNICODE", out) end end |
.native2ascii(str) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/java_native2ascii.rb', line 15 def self.native2ascii str out = "" arr = str.unpack("U*") return out if arr.nil? # arr_s = arr.size # i = 0 # # while i < arr_s # c = arr[i] # if c > 127 # out << sprintf("\\u%04x", c) # else # out << c # end # i+=1 # end arr.each do |c| if c > 127 out << sprintf("\\u%04x", c) else out << c end end out end |