問題タブ [utf-16]
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.
iphone - plist utf-8 値を utf-16 として読み取る
上付き文字と下付き文字を表示する必要がある iPhone アプリに取り組んでいます。plist からデータを読み込むためにピッカーを使用していますが、ピッカービューに Unicode 値が正しく表示されません。下付き文字と上付き文字は認識されません。これは、plist が utf-8 としてエンコードされていることが原因であると想定しているため、問題は、plist 文字列エンコードを utf-8 から utf-16 に変換する方法です。
もう少し詳しく説明します。
これを行うと、少なくともテキストフィールドに正しく表示されます:
NSString *equation = @"x\u00B2 + y\u00B2 = z\u00B2"
ただし、plist で同じ文字列を定義し、それを読み込んで文字列に割り当て、ピッカービューに表示しようとすると、上付き文字ではなくエンコードが表示されるだけです。
@Matt: Unicode が \u00B2 => \u00B2 でエスケープされているという提案に感謝します。「plists のエスケープされた値」をグーグル検索しても有用な結果は返されず、キーボードの cmd-ctrl-shift-+ を使用できませんでした。さらに提案があれば大歓迎です!!
java - BOM を使用して UTF-16LE バイト配列をエンコード/デコードするにはどうすればよいですか?
UTF-16 バイト配列を との間でエンコード/デコードする必要がありますjava.lang.String
。バイト配列はByte Order Marker (BOM)で与えられ、BOM でバイト配列をエンコードする必要があります。
また、私は Microsoft クライアント/サーバーを扱っているので、誤解を避けるためにエンコーディングを (LE BOM と共に) リトル エンディアンで出力したいと思います。BOM を使用するとビッグ エンディアンで動作するはずですが、Windows の世界で上流に泳ぎたくはありません。
例として、BOM を使用してリトル エンディアンでjava.lang.String
asをエンコードするメソッドを次に示します。UTF-16
Javaでこれを行う最良の方法は何ですか? 理想的には、最初に 2 つの余分なバイトが割り当てられた新しいバイト配列にバイト配列全体をコピーすることは避けたいと思います。
このような文字列のデコードにも同じことが言えますが、java.lang.String
コンストラクターを使用すると、より簡単になります。
c++ - Unicodeファイルを読むC++
簡単な質問があります。FFFEで始まるUTF16テキストファイルを読みます。この種のファイルを処理するためのC++ツールは何ですか?それを読み、いくつかの行をフィルタリングして、結果を表示したいだけです。
見た目はシンプルですが、プレーンなascciファイルを使った経験があり、急いでいます。VS C ++を使用していますが、マネージC++を使用したくありません。
よろしく
ここに非常に簡単な例を示します
xml - XML 宣言タグは大文字と小文字を区別しますか?
おそらく本当に単純で愚かな質問がありますが、どこにも答えが見つからないので、これについてかなり確信する必要があります.
さまざまなベンダーのさまざまな XML ファイルがあります。ベンダーの 1 人が、ファイルに日本語の文字を含む XML ファイルを提供してくれました。もともと、XML ファイルの処理に問題がありました ( MSXML SDKを使用しています)。文字が間違って出てきます。以下を XML ファイルに追加すると、すべてがうまく機能することがわかりました。
そこで、ベンダーにこれをファイルに追加するよう依頼しました。しかし、彼らは小文字のエンコーディングでそれを追加しました:
そして、この宣言を使用してこの新しいファイルをロードすると、この宣言が存在しない場合と同じ問題が発生します。
私が(確かに)理解しようとしているのは、そのエンコーディング属性が大文字と小文字を区別するかどうかです(またはそれ以外の問題です)。彼らが「utf-16」対「UTF-16」を置くことは重要ですか?
更新:ここに回答を投稿したこれらのアドバイスの下で、テストをセットアップして実行しました。1 つのファイルには小文字の utf-16 があり、もう 1 つのファイルには大文字が含まれていました。それ以外は、ファイルは同一でした。これは問題を解決せず、問題ではありません。私の結論は、回答に投稿された仕様が述べているように、MSXMLは大文字と小文字を区別しないということです。
python - Python UTF-16出力とWindowsの行末にバグがありますか?
このコードで:
test.py
次に、次のように実行します。
Windows2000上のPython2.6では、改行文字がバイトシーケンスとして出力されていることがわかりましたが、\x0D\x0A\x00
これはもちろんUTF-16では間違っています。
私は何かが足りないのですか、それともこれはバグですか?
php - PHP UTF-16 から ASCII への変換
次の文字列を考えてみましょう。UTF-16-LE でエンコードされ、PHP 変数に保存されます。mbstring または iconv で ' を一重引用符に置き換えることができませんでした。それを消毒する良い方法は何でしょうか。
弦:カール・セーガン'
のコズミック・コネクション
php - PHPでUTF-16の16進文字列をUTF-8に変換する方法は?
strace から次の出力があり、PHP を使用して UTF-8 に変換したい:
上記の文字列はUTF 16 HEXだと思います。
perl - Perl で UTF-16 ファイル名の存在を確認するにはどうすればよいですか?
UTF-16 でエンコードされたテキストファイルがあります。各行には、タブで区切られた多数の列が含まれています。気にする方のために説明すると、ファイルは iTunes からのプレイリスト TXT エクスポートです。列 27 にはファイル名が含まれています。
次のようなコードを使用して、LinuxでPerl 5.8.8を使用して読んでいます。
(注: このコード スニペットは短縮しました。実際のコードでは、iTunes で使用される Windows の絶対ファイル名を Linux ボックスで有効なファイル名に変換するためにいくつかの置換を行います)
ファイルは存在しますが、(-e) ファイル テストは true を返しません。文字列が UTF-16 であることと関係があると思いますが、何が問題なのかわかりません。実際のファイル名は ASCII 文字のみを使用します。$filename 変数を出力すると、ファイル名が正しく出力されます。
Perlのファイル名はUTF16にできますか? このコード スニペットを機能させる方法はありますか?