問題タブ [latin1]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - Oracle:varchar2フィールドのxmlエンティティをutf-8文字に変換します
テーブルはlatin-1であるため、特殊文字のXMLエンティティを保持するフィールドがテーブルにあります。例: " Hallöle slovenčina
"( "ö"はlatin-1ですが、 "slovenčina"の"č"は、値をデータベースに保存するアプリケーションによってエンティティに変換する必要がありました)
次に、XMLエンティティを元の文字に変換して、テーブルをutf-8でエンコードされたファイルにエクスポートする必要があります。
これを処理する可能性のある関数がOracleにありますか、それともそのための巨大なキー/値マップを作成する必要がありますか?
どんな助けでも大歓迎です。
編集:私は関数を見つけましたが、それは、、およびDBMS_XMLGEN.convert
でのみ機能します。オンではありません:-(<
>
&
&#NNN;
mysql - mysql内のガベージ文字を置き換えます
私のデータベースは、またはlatin1
でいっぱいです(端末がそれぞれlatin1またはunicodeに設定されているかどうかによって異なります)。文脈から、私はそれらがemdashsであるべきだと思います。IEでレンダリングされた(またはレンダリングされなかった)場合、これらは厄介なバグを引き起こしているように見えます。それらを見つけて交換したいのですが。問題は、âと�のどちらの文字も。と一致しないことです。クエリの実行:â"
'��"'
replace
エラーなしで実行されますが、何も実行されません(0行が変更されました)。ターミナルにコピーすると、「ひし形の疑問符」の文字が一致していないことは明らかです。そのコードを見つけて、それと何かを一致させる方法はありますか?コンソールは、mysql
これを1行で実行できることに非常に近いので、回避できるのであれば、ターミナルの外でスクリプトを作成したくありません。
dbはAmazonRDSでホストされているため、ここで他の質問で参照されているregexpudfをインストールできません。長期的には、db全体をutf8に適切に変換する必要がありますが、このレンダリングの問題をすぐに修正する必要があります。
編集:
悪い文字をで分離しましたhexdump
。これはe280です(これはどのUnicode文字にも対応していないと思います)。どうすればそれを置換関数にフィードできますか?
何もしません。
mysql - Latin1でエンコードされた列でUTF-8文字を検出する方法-MySQL
私は、データベースをLatin1からUTF-8に変換するという、面倒で手間のかかる作業に取り掛かろうとしています。
この時点で、テーブルに保存したデータの種類を確認したいだけです。これにより、データを変換するために使用するアプローチが決まります。
具体的には、Latin1列にUTF-8文字があるかどうかを確認したいのですが、これを行うための最良の方法は何でしょうか。影響を受ける行が数行しかない場合は、これを手動で修正できます。
オプション1.MySQLダンプを実行し、Perlを使用してUTF-8文字を検索しますか?
オプション2.MySQLCHAR_LENGTHを使用して、マルチバイト文字の行を検索しますか?例SELECT name FROM clients WHERE LENGTH(name) != CHAR_LENGTH(name);
:これで十分ですか?
現時点では、MysqlクライアントのエンコーディングをUTF-8に切り替えました。
mysql - ビューが utf8 である理由と、それを latin1 に変更するにはどうすればよいですか
クライアント プログラムでビューを使用する必要があるが、latin1 としての結果が必要であるという問題があります。これが私が持っているものです:
mysql - 準備されたクエリと通常のクエリのErlang Emysqlエンコーディングの違い
ここで emysql エンコーディングについて正しい答えを得た質問を書きました。答えは別の質問を特定します...
iPhoneの絵文字をデータベースに保存しようとしています...
私がする時 :
すべてが正常に動作します...
ただし、次の場合:
モジバケを取得しています。正しい用語を使用するように編集
私はと接続しています:
残念ながら、データベースを使用して絵文字をそのように保存していた以前のソフトウェアのため、utf8 を使用できません。utf8 を使用すると、新しいシステムでは動作しますが、古いシステムによって挿入された行では動作しません。
編集:
SQLインジェクションを効果的に防ぐ準備済みステートメントを本当に使いたいです。
php - UTF8 -> Latin1 難易度、PHP
アクセント付きの文字が失われています。
PHP から、UTF8 を使用する xml ファイルをダウンロードしますが、私の PHP スクリプトは Latin1 を使用します。UTF8 を Latin1 に変換できません。
私はこれを試しました:
と
しかし、どちらにしても、アクセント付きの文字は壊れて 2 文字になります。
入力:
出力:
私は自分でそれを理解しました。以下の私の答えを見てください。助けてくれてありがとう!
php - UTF-8データをlatin1データベース列に入れるとどうなりますか?
UTF-8
スペイン語でエンコードされたデータを取得しています。私がそれを入れる必要があるデータベース列は現在latin1
charsetを使用しています。
そのUTF-8データをそれらの列に入れるとどうなりますか?正しいデータは失われますか?または、php関数を使用してエンコーディングを変換する必要がありますmb_convert_encoding
か?
python - 文字列のエンコードと、おそらくlatin1およびutf8からのデコード
最近、Latin1を使用してエンコードされ、ブラウザーの疑問符記号で表示されたときにレンダリングされていたMySQLデータベースに遭遇しました。これを修正するために、すべてのテーブルでDBのエンコーディングをutf8に、Collationをutf8_general_ciに変更しましたが、既に保存されているデータはまだ疑問符の記号で表示され、mysqlからブラウザーへのデータの保存とポーリングはすべて行われました。 phpによって行われた私はutf8がphpでも使用されていることを確認し、多くの人がオンラインで提案したようにセット名utf8を実行しましたが、問題は、文字列にÃÂ'などの奇妙な文字がないことを知っていたということです。
データの例
保存:
EMMANUEL PE \ xc3 \ u0192 \ xc2 \ u2018A GOMEZ PORTUGAL
レンダリング:
EMMANUELPEÃÂ'AGOMEZPORTUGAL
ちゃんとした:
EMMANUELPEÑAGOMEZPORTUGAL
保存:
ルイス・ヘルン\xe1ndez-ヒガレダ
レンダリング:
ルイス・エルナンデス・ヒガレダ
ちゃんとした:
ルイス・エルナンデス・ヒガレダ
保存:
Teresa de Jes \ xc3 \ u0192 \ xc2 \ xbas Galicia G \ xc3 \ u0192 \ xc2 \ xb3mez
レンダリング:
TeresadeJesúsGaliciaGómez
ちゃんとした:
TeresadeJesúsGaliciaGómez
保存:
DR。JOS \ xc3 \ u0192 \ xc2 \ u2030 ABEN \ xc3 \ u0192 \ xc2 \ x81MAR RIC \ xc3 \ u0192 \ xc2 \ x81RDEZ GARC \ xc3 \ u0192 \ xc2 \ x8dA
ちゃんとした:
DR。JOSÉABENÃÂMARRICÃÂRDEZGARCÃÂA
現在、Pythonを使用してDBからデータを取得していますが、Unicode utf8に正規化しようとしていますが、本当に迷っています。ここに到達している限り、現在奇妙なものとして表示されているものを変換する必要があります。上記のように文字を読み取り可能なテキストに変換します。
ここで何が欠けていますか?データは修復不可能ですか?
関数 https://gist.github.com/2649463
注: すべての例の中で、適切にレンダリングされているものが1つあります(これを修正する方法についてアドバイスがあれば、そこに残されているので考慮されます)
java - 入力ファイルにサポートされていない文字が含まれている場合はどうなりますか?
このテキストファイルには、JVMのデフォルトの文字セットであるLatin1文字セットにサポートされていない文字が含まれている可能性があります。
私のJavaプログラムがファイルから読み込もうとすると、これらの文字は何に変わりますか?具体的には、ファイルに2バイトの長さの文字が含まれているとすると、1バイトの文字として読み取られますか(Latin1の各文字の長さは1バイトしかないため)。
ありがとう、
mysql - MySQL の奇妙な 16 進数区切り - UTF8 に変換する必要があります
わかった。そのため、トラフィックの多い Web サイトを支えている大規模なレガシー データベースがあります。テーブルは latin1 でエンコードされており、UTF-8 に変換中です。サイトをRails化し、DBに直接アクセスできるようになりました。ただし、データベースに挿入された utf8 文字で非常に奇妙なことが起こっているようです。Tolk (https://github.com/dhh/tolk) を使用してサイトを中国語に変換していますが、残念ながら、翻訳テーブルを UTF-8 に変換する前にサイトがセットアップされました。問題は、ユニコード文字の latin1 テーブルに奇妙な文字形式が挿入されていることです。
次に例を示します。
データは YAML としてシリアル化され、Rails またはデータベースは、Unicode の漢字をこのバックスラッシュで区切られた 16 進形式に変換するために何らかの処理を行っているようです。
何が起こっているのでしょうか?これらの 16 進文字列を対応する utf-8 文字に変換する方法はありますか?