[Mac]sqlファイルのハングル破壊を解決する
3149 ワード
macではエディタのutf-8設定と文字セット設定が設定されていますが、sqlファイルではハングル文字が破壊されることもあります.
問題の原因は、sqlファイルがutf-8に符号化されていないことです.sqlファイルをutf-8に再符号化すると、問題が解決します.次の方法は、ICONVを使用してファイルを符号化することです.
iconvはLinuxユーティリティで、ファイルにエンコードされたCharacter-set(以下、文字セット、Charsetと略す)を変換します.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
変換するファイルを指定します.
まず、
まず、
したがって、「」に対応するB 0 A 1をプログラマ計算機に変換すると、
コンピュータは単純な計算機にすぎませんが、韓国語や英語などの文字データの交換が可能になりました.文字交換のために生まれた符号化方式がある.
f
「{0}」の値はAC 00を表します.コードポインタ(U+)を貼り付けると、U+AC 00になります.これは、コンピュータが
問題の原因は、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
およびCP949
、iSO-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-8
、UTF-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
に変換されることを意味します.このプロセスは인코딩
と呼ばれます.Reference
この問題について([Mac]sqlファイルのハングル破壊を解決する), 我々は、より多くの情報をここで見つけました https://velog.io/@ragnarok_code/Mac-sql-파일-한글-깨짐-해결하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol