問題タブ [utf-16le]

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 投票する
0 に答える
211 参照

php - php UTF-16LE に変換されたファイルが、最新の Office の更新後に Excel で開かない

私たちは何年にもわたって動作する PHP コード スニペットを持っています。シンプルな HTML テーブルを生成し、ユーザーはこれらを XLS ファイルとして保存できます。そしてそれをExcelで開きます。

この種のファイルを開くと、Excel が開き、まったく空の灰色の領域が表示されます。エラーもメッセージもありません。ただの空白。これは、Office 2010 が最新 (2016.07.14) の公式の Microsoft Office 更新プログラムを取得したマシンでのみ発生します!

上記の PHP スニペットは非常に簡単です。

BOM があり、$out にテーブルが含まれています。$out に単純なテーブルを配置すると、起動しません。例えば:

生成されたファイルをメモ帳++で開いて再度保存すると(何も変更されていない)、Excelが正しく開くので、非常に奇妙です。

問題はiconvのどこかにあると思います...それを削除したので、Excelに奇妙な文字が表示されます。

同じ状況の人はいますか?

私の問題についての助けや提案をいただければ幸いです。

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

utf-8 - UTF-16LE Elixir ビット文字列を Elixir 文字列に変換する

UTF-16LE でエンコードされた Elixir ビット文字列が与えられた場合:

これを読み取り可能な Elixir 文字列に変換するにはどうすればよいですか (「Devastator」と綴られています)。私が得た最も近い方法は、上記を Unicode コードポイント ( ) のリストに変換し、それらの先頭にエスケープ シーケンスを追加["0044", "0065", ...]しようとすることですが、これは無効なシーケンスであるため、Elixir はエラーをスローします。\u私はアイデアがありません。

0 投票する
0 に答える
1070 参照

php - PHPで適切なエンコーディングを検出するには? mb_detect_encoding が機能しない

文字列のエンコーディングを検出できるようにする必要がありますが、mb_detect_encoding が機能していません。

ファイル ( ) から文字列を取得しfile_get_contentsましたが、問題を引き起こしたファイルが UTF-16 LE であることがわかりました。ただし、ドキュメントから、このエンコーディングの検出は不可能であることがわかります( mb_detect_order :「UTF-16、UTF-32、UCS2、および UCS4 の場合、エンコーディングの検出は常に失敗します。」)。

PHPで信頼できる方法で文字列のエンコーディングを取得するにはどうすればよいですか? 可能なエンコーディングはありますか?

これを解決しようとして数時間を失いましたが、適切なリソースが見つかりませんでした。これを自動化できるようにしたいので、ファイルのエンコーディングが変更された場合、プログラムがそれを処理できるようになります (別の Web サイトからファイルを取得しています)。


これを試してみましたが成功しませんでした.UTF-8が表示されます:

私もこれを試しました: