将IBM437数据转换为可读的英文文本(UFT-8或ASCII)

时间:2016-02-12 19:13:51

标签: ruby-on-rails ruby

以下是示例代码:

input = 'C:\\GOOD_AOA21_420031042_2016-02-09_02.38.11.txt'
file = File.open(input)
original_file_data = file.read
original_file_data_encoding = original_file_data.encoding
puts "String Encoding #{original_file_data_encoding}"
puts "#{original_file_data}"
#===============================================
ec = Encoding::Converter.new("IBM437", "UTF-8")
converted_to_utf_8 = ec.convert(s).dump
puts "Encoding after IBN 437 to UFT-8 conversion: #{converted_to_utf_8.encoding}"
puts "#{converted_to_utf_8}"

输出结果为:

String Encoding IBM437
 ���������@@�@@����������@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@      @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  Encoding after IBN 437 to UFT-8 conversion: UTF-8
"\u{2248}\u{b0}\u{2500}\u{2264}\u{b0}\u{2248}\u{2248}\u{2219}\u{2261}@@\u{251c}@@\u{2261}\u{2320}\u{2265}\u{2261}\u{2261}\u{2264}\u{b1}\u{2261}\u{2320}\u{2265}@ @@@@@@@@@@@@@@@

我不知道为什么会得到

"\u{2248}\u{b0}\u{2500}\u{2264}\...

以及如何将其转换为可读的英语。

0 个答案:

没有答案