Skip to content

Instantly share code, notes, and snippets.

@xijo
Created August 3, 2015 15:55
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save xijo/d4bad3953f7b9979dd91 to your computer and use it in GitHub Desktop.
Save xijo/d4bad3953f7b9979dd91 to your computer and use it in GitHub Desktop.
Repair utf-8 strings that contain iso-8599 encoded utf-8 characters
class EncodingRepairer
REPLACEMENTS = {
"€" => "€", "‚" => "‚", "„" => "„", "…" => "…", "ˆ" => "ˆ",
"‹" => "‹", "‘" => "‘", "’" => "’", "“" => "“", "â€" => "”",
"•" => "•", "–" => "–", "—" => "—", "Ëœ" => "˜", "â„¢" => "™",
"›" => "›", "Å“" => "œ", "Å’" => "Œ", "ž" => "ž", "Ÿ" => "Ÿ",
"Å¡" => "š", "Ž" => "Ž", "¡" => "¡", "¢" => "¢", "£" => "£",
"¤" => "¤", "Â¥" => "¥", "¦" => "¦", "§" => "§", "¨" => "¨",
"©" => "©", "ª" => "ª", "«" => "«", "¬" => "¬", "®" => "®",
"¯" => "¯", "°" => "°", "±" => "±", "²" => "²", "³" => "³",
"´" => "´", "µ" => "µ", "¶" => "¶", "·" => "·", "¸" => "¸",
"¹" => "¹", "º" => "º", "»" => "»", "¼" => "¼", "½" => "½",
"¾" => "¾", "¿" => "¿", "À" => "À", "Â" => "Â", "Ã" => "Ã",
"Ä" => "Ä", "Ã…" => "Å", "Æ" => "Æ", "Ç" => "Ç", "È" => "È",
"É" => "É", "Ê" => "Ê", "Ë" => "Ë", "ÃŒ" => "Ì", "ÃŽ" => "Î",
"Ñ" => "Ñ", "Ã’" => "Ò", "Ó" => "Ó", "Ô" => "Ô", "Õ" => "Õ",
"Ö" => "Ö", "×" => "×", "Ø" => "Ø", "Ù" => "Ù", "Ú" => "Ú",
"Û" => "Û", "Ãœ" => "Ü", "Þ" => "Þ", "ß" => "ß", "á" => "á",
"â" => "â", "ã" => "ã", "ä" => "ä", "Ã¥" => "å", "æ" => "æ",
"ç" => "ç", "è" => "è", "é" => "é", "ê" => "ê", "ë" => "ë",
"ì" => "ì", "í" => "í", "î" => "î", "ï" => "ï", "ð" => "ð",
"ñ" => "ñ", "ò" => "ò", "ó" => "ó", "ô" => "ô", "õ" => "õ",
"ö" => "ö", "÷" => "÷", "ø" => "ø", "ù" => "ù", "ú" => "ú",
"û" => "û", "ü" => "ü", "ý" => "ý", "þ" => "þ", "ÿ" => "ÿ"
}
def repair(value)
value or return
value.gsub!(Regexp.new(REPLACEMENTS.keys * ?|), REPLACEMENTS)
end
end
@bharatdu
Copy link

can you tell me what is this how to convert this
4�� � �� �� ��� � ���� ÿÿ À¨�Ç ÿÿÿ À¨������ ÿÿÿÿ�æº ±@�À¨��(# ,c c ��–�
�; �; �; �; �; �; �; � � � � � . ü� � �Òù Ðß������ FQ3D-B1G8-ABLSoft Inc. w FP FP AccesFinger V3.0 Acc Access_V1.3 Ìÿ��†2�€¸6 �@â� Ò� @â� Ò� �� ´��€��� ü��€��� D��€��� Œ��€��� Ô��€��� ���€��� d��€��� ¬��€��� ô��€��� <��€��� „��€��� Ì��€��� ���€��� \��€��� ¤��€��� ì��€��� 4��€��� |��€��� Ä��€��� ��€��� T��€��� œ��€��� ä��€��� ,��€��� t��€��� ¼��€��� ���€��� L��€��� ”��€��� Ü��€��� $��€��� l��€��� ´��€��� none Dept. 1 Dept. 2 Dept. 3 Dept. 4 Dept. 5 Dept. 6 Dept. 7 Dept. 8 Dept. 9 Dept. 10 Dept. 11 Dept. 12 Dept. 13 Dept. 14 Dept. 15 Shift1 � �
��� � �
��� � �
��� � �
��� � �
��� � � Shift2 � � � � � � � � � � � � Shift3 � � � � � � � Shift4 � � � � � � � Shift5 � � � � � � � � � � ¤W�€��� ìW�€��� 4X�€��� |X�€��� ÄX�€��� Y�€��� TY�€��� œY�€��� äY�€��� ,Z�€��� tZ�€��� ¼Z�€��� �[�€��� L[�€��� ”[�€��� Ü[�€��� $\�€��� l\�€��� ´\�€��� ü\�€��� D]�€��� Œ]�€��� Ô]�€��� �^�€��� d^�€��� ¬^�€��� ô^�€��� <_�€��� „_�€��� Ì_�€��� ��€��� \�€��� ¤�€��� ì�€��� 4a�€��� |a�€��� Äa�€��� b�€��� Tb�€��� œb�€��� äb�€��� ,c�€��� tc�€��� ¼c�€��� �d�€��� Ld�€��� ”d�€��� Üd�€��� $e�€��� le�€��� ´e�€��� ���� L¬�€��� ”¬�€��� ܬ�€��� $­�€��� l­�€��� ´­�€��� ü­�€��� D®�€��� Œ®�€��� Ô®�€��� �¯�€��� d¯�€��� ¬¯�€��� ô¯�€��� <°�€��� „°�€��� Ì°�€��� �±�€��� \±�€��� ¤±�€��� ì±�€��� 4²�€��� |²�€��� IJ�€��� ³�€��� T³�€��� œ³�€��� ä³�€��� ,´�€��� t´�€��� ¼´�€��� �µ�€��� Lµ�€��� ”µ�€��� ܵ�€��� $¶�€��� l¶�€��� ´¶�€��� ü¶�€��� D·�€��� Œ·�€��� Ô·�€��� �¸�€��� d¸�€��� ¬¸�€��� ô¸�€��� &lt;¹�€��� „¹�€��� ̹�€��� �º�€��� \º�€��� ¤º�€��� ìº�€��� 4»�€��� |»�€��� Ä»�€��� ¼�€��� T¼�€��� œ¼�€��� ä¼�€��� ,½�€��� t½�€��� ¼½�€��� �¾�€��� L¾�€��� ”¾�€��� ܾ�€��� $¿�€��� l¿�€��� ´¿�€��� ü¿�€��� DÀ�€��� ŒÀ�€��� ÔÀ�€��� �Á�€��� dÁ�€��� ¬Á�€��� ôÁ�€��� <Â�€��� „Â�€��� ÌÂ�€��� �Ã�€��� \Ã�€��� ¤Ã�€��� ìÃ�€��� 4Ä�€��� |Ä�€��� ÄÄ�€��� Å�€��� TÅ�€��� œÅ�€��� äÅ�€��� ,Æ�€��� tÆ�€��� ¼Æ�€��� �Ç�€��� LÇ�€��� ”Ç�€��� ÜÇ�€��� $È�€��� lÈ�€��� ´È�€��� üÈ�€��� DÉ�€��� ŒÉ�€��� ÔÉ�€��� �Ê�€��� dÊ�€��� ¬Ê�€��� ôÊ�€��� &lt;Ë�€��� „Ë�€��� ÌË�€��� �Ì�€��� \Ì�€��� ¤Ì�€��� ìÌ�€��� 4Í�€��� |Í�€��� ÄÍ�€��� Î�€��� TÎ�€��� œÎ�€��� äÎ�€��� ,Ï�€��� tÏ�€��� ¼Ï�€��� �Ð�€��� LÐ�€��� ”Ð�€��� ÜÐ�€��� $Ñ�€��� lÑ�€��� ´Ñ�€��� üÑ�€��� DÒ�€��� ŒÒ�€��� ÔÒ�€��� �Ó�€��� dÓ�€��� ¬Ó�€��� ôÓ�€��� <Ô�€��� „Ô�€��� ÌÔ�€��� �Õ�€��� \Õ�€��� ¤Õ�€��� ìÕ�€��� 4Ö�€��� |Ö�€��� ÄÖ�€��� ×�€��� T×�€��� œ×�€��� ä×�€��� ,Ø�€��� tØ�€��� ¼Ø�€��� �Ù�€��� LÙ�€��� ”Ù�€��� ÜÙ�€��� $Ú�€��� lÚ�€��� ´Ú�€��� üÚ�€��� DÛ�€��� ŒÛ�€��� ÔÛ�€��� �Ü�€��� dÜ�€��� ¬Ü�€��� ôÜ�€��� &lt;Ý�€��� „Ý�€��� ÌÝ�€��� �Þ�€��� \Þ�€��� ¤Þ�€��� ìÞ�€��� 4ß�€��� |ß�€��� Äß�€��� à�€��� Tà�€��� œà�€��� äà�€��� ,á�€��� tá�€��� ¼á�€��� �â�€��� Lâ�€��� ”â�€��� Üâ�€��� $ã�€��� lã�€��� ´ã�€��� üã�€��� Dä�€��� Œä�€��� Ôä�€��� �å�€��� då�€��� ¬å�€��� ôå�€��� <æ�€��� „æ�€��� Ìæ�€��� �ç�€��� \ç�€��� ¤ç�€��� ìç�€��� 4è�€��� |è�€��� Äè�€��� é�€��� Té�€��� œé�€��� äé�€��� ,ê�€��� tê�€��� ¼ê�€��� �ë�€��� Lë�€��� ”ë�€��� Üë�€��� $ì�€��� lì�€��� ´ì�€��� üì�€��� Dí�€��� Œí�€��� Ôí�€��� �î�€��� dî�€��� ¬î�€��� ôî�€��� &lt;ï�€��� „ï�€��� Ìï�€��� �ð�€��� \ð�€��� ¤ð�€��� ìð�€��� 4ñ�€��� |ñ�€��� Äñ�€��� ò�€��� Tò�€��� œò�€��� äò�€��� ,ó�€��� tó�€��� ¼ó�€��� �ô�€��� Lô�€��� ”ô�€��� Üô�€��� $õ�€��� lõ�€��� ´õ�€��� � � � �

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment