問題タブ [cp1251]

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.

0 投票する
1 に答える
64 参照

perl - perlでテキストファイルのコードページを推測するパターンコード?

初心者の質問で申し訳ありませんが、次のスクリプトを機能させることができません。これは便利なコードの平和ですが、ネットで同様の機能するものは見つかりませんでした。

コンソール出力は次のとおりです。

私は何を間違っていますか?前もって感謝します。

0 投票する
2 に答える
1624 参照

python - Python でのキリル文字のデコード - 文字マップ

サーバーの応答を受け取りました。バイト:

\xd0\xa0\xd1\x83\xd0\xb1\xd0\xbb\xd0\xb8 \xd0\xa0\xd0\xa4 \xd0\x9a\xd0\xa6\xd0\x91

これは確かにキリル文字ですが、どのエンコーディングかはわかりません。Python でデコードしようとするたびに失敗します。

どちらの結果も Unicode エスケープに多少似ていますが、これも機能しません。

キリル文字を復元するためのWeb サービスがあり、Windows-1251 を使用してバイトをデコードできます。

出力 (ソース エンコーディング: WINDOWS-1251)

Рубли РФ КЦБ

しかし、それにアプローチする方法については、これ以上のアイデアはありません。

エンコーディングの仕組みについて何かが欠けていると思うので、問題が些細なことだと思われる場合は、少しの説明/チュートリアルへのリンク/さらにグーグルで検索するためのいくつかのキーワードをいただければ幸いです。

解決:

Windows PowerShell は既定で Windows-850 コードページを使用しますが、これは一部のキリル文字を処理できません。解決方法の 1 つは、シェルを起動するたびにコードページを Unicode に変更することです。

これを新しいデフォルトにする方法を説明します

0 投票する
3 に答える
4279 参照

perl - Perl: cp1251 から utf8 への変換

文字列をutf8に変換しようとしています。

そしてこの場合、私は必要なものを手に入れます:

しかし、外部変数を使用する場合:

何も起こりません。

これは最初の例のダンプです:

そして2番目:

私はこの方法を試しました:

しかし、繰り返しますが、それは私が必要とするものではありません。最初のスクリプトのような結果を得るのを手伝ってくれませんか?


これを使用した後

ボロディンが提案したように、私はこれを取得します

0 投票する
1 に答える
965 参照

python - UnicodeDecodeError の修正方法: 'utf8' デコード バイト 0xc0 が SQL ファイルで読み取られる

これはtx.sqlです

これはpythonスクリプトです

問題の行:script = f.read().decode('utf8')

UnicodeDecodeError: 'utf8' コーデックは位置 134 のバイト 0xc0 をデコードできません: 無効な開始バイト

私が試してみました

しかしライン

正しいラインの作り方は?

WHERE姓='РџСѓРїРєРёРЅ'

文字列が存在する必要があります

WHERE姓='パーキンキン'

0 投票する
1 に答える
99 参照

mysql - MySQL: 同じ列にエンコーディングが混在

私は、PC のインベントリ作成に OCS Inventory を使用しています。ほぼ問題なく動作しますが、これらの PC の 99% は Windows(R): XP および Seven で動作します。また、WMI 情報には標準がありません。

たとえば、OCS エージェント (データを収集して OCS サーバーに送信するターゲット PC 上の常駐プログラム) は、" Realtek PCIe GBE Family Controller (1 Gb/s) " (純粋な英語、エンコーディングは問題ではありません) として応答を受け取る場合があります。または " ¨£ ¡¨â®¥ á¥â¥¢®¥ ¯®¤ª«î票¥ Intel(R) 82566DM-2 (100 Mb/s) " (正しくない、ロシア語、CP1251)、または" Realtek RTL8169/8110 Family Gigabit Ethernet NIC - Ìèíèïîðò ïëàíèðîâùèêà ïàêåòîâ (100 Mb/s) " (ロシア語、CP866 が正しくありません)。または " VIA Rhine III Fast Ethernet Adapter - Минипорт планировщика пакетов (100 Mb/s) " (正しい、ロシア語、UTF8、または別の Unicode)

Windows がこれらの結果を 1 つのエンコーディングだけで返すようにする方法はありません。ドライバの .INF ファイルでどのエンコーディングが使用されたか、WMI によってエンコーディングが返されるかどうかは、ドライバ メーカーの考えに任されているようです。

ほとんどの問題ではありませんが、上司は、IT インフラストラクチャの状態に関する四半期報告書に「象形文字」が表示されるのを非常に嫌います。そして、彼らは正しいようです。

オンザフライで、あるエンコーディングから別のエンコーディングに単一フィールドを再エンコードする方法はありますか? 内容が混在しているため、列全体を再エンコードしません。どのエンコードが使用されたかは大まかに判断できますが、 MySQL の SQL 言語のみを使用して再エンコードして正しいレポートを作成する方法がわかりません。

実用的な提案はありますか?