[Mac]sqlファイルのハングル破壊を解決する


macではエディタのutf-8設定と文字セット設定が設定されていますが、sqlファイルではハングル文字が破壊されることもあります.
問題の原因は、sqlファイルがutf-8に符号化されていないことです.sqlファイルをutf-8に再符号化すると、問題が解決します.次の方法は、ICONVを使用してファイルを符号化することです.

変換方法

iconv -c -f euc-kr -t utf-8 [euc-kr파일] > [utf-8변환파일]

iconv -c -f euc-kr -t utf-8 original.sql > encode.sql

iconvとは?


iconvはLinuxユーティリティで、ファイルにエンコードされたCharacter-set(以下、文字セット、Charsetと略す)を変換します.iconvは、マルチバイト韓国語符号化EUC-KRおよびCP949iSO-2022-KRおよびJOHAB方式をサポートする.これはGNUによって作成された文字列変換ユーティリティとライブラリで、Linuxはglibcに含まれており、Windowsはgnuwin 32から入手できます.

iconvの使い方

iconv -f [현재 파일의 문자셋] -t [변환할 문자셋]

iconvフラグ


プロジェクト
説明:
-c
入力ファイルで変換できない文字は出力で省略します.変換できない文字には、入力されたFromCodeで無効な文字や、出力されたTooCodeに対応する文字がない文字が含まれます.変換できない文字をスキップすると、iconvは次のバイトを入力し続け、次の文字を変換します.cを使用しない場合、iconvは入力中に変換できない文字が見つかったときに終了します.-cの可用性はiconvの終了状態に影響しない.
-f (FromCode)
入力データをエンコードするコードセットを指定します.fフラグとFromCodeパラメータの間のスペースはオプションです.
-l
サポートされているすべてのFromCode値とToCode値を標準出力に書き込みます.
-s
標準エラーに記録された無効な文字に関連するすべてのメッセージを禁止します.sを使用しない場合、変換または転送できない各文字のエラーメッセージが標準エラーに書き込まれます.sの存在はiconvの終了状態に影響しない.
-t (ToCode)
出力データを変換するコードセットを指定します.tフラグとTocodeパラメータの間のスペースはオプションです.
FileName
変換するファイルを指定します.
まず、인코딩は、コンピュータが「」の文字を認識できるようにするプロセスである.これに対して、コンピュータが「プラス」文字を使用する方法をdecodingと呼ぶ.

EUC-KRとUTF-8


まず、EUC-KRは2 byteでハングルを表す符号化方式である.


したがって、「」に対応するB 0 A 1をプログラマ計算機に変換すると、1011 0000 1010 0000と認識される.
コンピュータは単純な計算機にすぎませんが、韓国語や英語などの文字データの交換が可能になりました.文字交換のために生まれた符号化方式がある.ASCII(American Standard Code for Information Interchange)である.ASCII 코드0 ~ 126の間に存在し、2^7개からなる.国ごとに文字が異なるため、ASCIIコードは国ごとに作成され、管理され、標準案は'유니코드'で、国間でデータを交換するために使用されます.Unicodeの符号化方式は大きく3種類ある.UTF−8方式は「可変」であり、例えばUTF-8UTF-16およびUTF-32である.2 byteでハングルを固定しているEUC-KRとは違いますまた、Unicodeには各文字の一意のコード値もあります.以下はハングルのUnicode表です.
f

「{0}」の値はAC 00を表します.コードポインタ(U+)を貼り付けると、U+AC 00になります.これは、コンピュータがAC00->1010 1100 0000 0000->11101010 101100000 10000000->EA B0 80に変換されることを意味します.このプロセスは인코딩と呼ばれます.