問題タブ [shift-jis]

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 に答える
788 参照

html - HTML 日本語エンコーディングの問題

日本語 OS の HTML ページで問題が発生しています。

日本語 JIS にエンコードすると、HTML フォーム ソースは次のようになります。

そのため、文字列の後<%、フォームが壊れて、フォームの残りの部分を表示できなくなります。

この種の問題に対して私ができることを提案してください。

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

java - 日本語の漢字を Shift-JIS から UTF-8 に変換する

日本語のテキストを含むCSVファイルを読み込んで、このファイルからDBにデータを書き込もうとしています。CSV は、私があまり慣れていない Flex コードを介してアップロードされます。しかし、私のバックエンド側には、ファイルの内容を含む単純な byte[] があります。私は次のコードを使用しています:

strLine 変数をデバッグしているときに、日本語の漢字の代わりに疑問符しか表示されません (特に、漢字の裵でテストしました)。他の日本語の文字 (たとえば、〒文字) は問題ないようです。デバッグ ウィンドウ (および後で私の DB) では、次のように表示されます。

私が同じことをしているが、コードに Const.ENCODING_SHIFT_JIS の代わりに UTF-8 と Const.UTF-8 をエンコードするファイルがある場合、すべて正常に動作します。ただし、クライアントは Shift-JIS のサポートが必要です。たぶん、誰かがこの問題を解決する方法を教えてくれるかもしれませんが、少なくともどの特定の領域 (flex、java、shift-jis エンコーディング自体...) である可能性がありますか?

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

c# - ファイルを Shift-JIS から UTF8 に変換 ディスクから再読み込みせずに BOM なし

Shift-JIS や UTF8 NoBOM など、さまざまな形式のファイルを扱っています。少しの言語知識を使用して、ファイルが UTF8 または ShiftJIS として正しく解釈されているかどうかを検出できますが、ファイルが読み込んだタイプではないことが検出された場合、私の新しいエンコーディングを指定してファイルを再読み込みする必要なく、インメモリ配列。

現在、Shift-JIS を想定してファイルを読み込んでいます。

そして、それが既知の形式 (BOM がある) であるか、データが Shift-JIS として意味があるかを判断する魔法を実行した後、すべて問題ありません。ただし、データがゴミの場合は、次の方法でファイルを再読み取りしています。

この再読み取りステップを回避し、可能であればメモリ内のデータを再解釈しようとしています。

それとも魔法がすでに起こっていて、二重の I/O アクセスについて不必要に心配しているのですか?

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

encoding - あいまいな文字セット/エンコーディングの文字マップを取得する (例: ibm-943_P14A-2000)

最近、当社のソフトウェアで、特定のあいまいな漢字 (漢字) が Shift-JIS エンコーディングで検出されないという問題が発生しました。Shift-JIS 文字列を読み込んで「範囲外」の漢字を見つけ、代わりに文字列を UTF-8 に切り替えるアルゴリズムを作成しました (文字数は多くなりますが、より多くのスペースを使用します)。

カバーされない漢字を見つけるには、ibm-943_P14A-2000 エンコーディングの文字マップを入手する必要があります。

これらの文字セットのマップをどこで見つけるのでしょうか? Web 検索を介して UTF8 ルックアップなどを見つけるのは非常に簡単ですが、このエンコーディングでどの値がどの値に対応するかを示すチャート/テーブル/ファイルを見つけることができません。

どんなに曖昧でも、どんな方向にでも私を向けることができれば、私はとても感謝しています.

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

unicode - EUC-JP または GB18030 テキストファイル

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

android - 円記号 (U+00A5) の Android Shift-JIS エンコーディングが -4,-4 を生成するのはなぜですか?

次のコードを実行すると、間違った値が生成されるようです。

[ -4, -4 ] を生成しますが、 [ 0x5c ] を期待します

「Shift-JIS」、「shift_jis」、「cp932」など、さまざまな代替名を試しましたが、すべて同じ結果が得られました。

結果のデータを Shift-JIS デコーダーにフィードすると、例外が発生します。java.nio.charset.UnmappableCharacterException: Length: 2

つまり、次のように構成されたデコーダーを使用します。

しかし、エンコーダーの出力が間違っているように見えることを考えると、デコーダーは関係ないと思います。私のポイントは、実際のバイトに関係なく、エンコーダーはデコードできないデータを生成するということです。

全角円 (U+FFE5) は [ -127 (0x81), -113 (0x8F) ] にエンコードされ、正しくデコードされます。

不思議なことに、[ 92 (0x5C) ] をデコードしようとすると、これは、単一幅円の Shift-JIS エンコーディングであると私が考えるものであり、Android/Java デコーダーはバックスラッシュを生成し、文字を 92 のままにします。

エンコーダーが特定の文字をサポートしていない場合は、「?」などの置換文字が必要です。しかし、-4 (0xFC) は有効な Shift-JIS ではないようです。Unicode 置換文字 U+FFFD でさえありません。次の行を使用すると、エンコーダーが [-4, -4] を使用するように構成されているように見えることがわかります。

  • では、単一幅の円が Shift-JIS にマッピングされていないのはなぜですか?
  • [-4, -4] は賢明なエンコーダーの置き換えですか?
  • デコーダが円 (U+00A5) への 0x5C マッピングをサポートしないのはなぜですか?
  • 0x5C が正しいエンコーディングでない場合、何ですか?