問題タブ [iconv]
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.
c++ - iconvエンコーディング変換の問題
文字列をutf8からgb2312に変換するのに問題があります。私の変換関数は以下のとおりです
これは私がそれをどのように使用したかの例です:
編集:私はほとんどの場合E2BIGエラーを受け取ります。
python - シェルでファイルをiso-8859-1からutf-8iconvに変換した場合と、サブプロセスを使用してPythonからファイルを呼び出した場合とでは異なる結果になります
まあ、これは簡単な質問かもしれません。率直に言って、私はそれらすべてのエンコーディングと少し混乱しています。
01234.txt
iso-8859-1というファイルがあるとします。
私がする時:
iconv --from-code=iso-8859-1 --to-code=utf-8 01234.txt > 01234_utf8.txt
それは私に望ましい結果を与えます、しかし私がpythonとサブプロセスを使って同じことをするとき:
ほぼ同じ結果が得られますが、新しいファイルが欠落しています。たとえば、最後のファイルと最後のファイルの前の行の一部です。
ここに両方のファイルの最後の3行があります:iconv result:
795719000 | MARIA TERESA MARROU VILLALOBOS | 107
259871385 | CHRISTIAM ALBERTO SUAREZ VILLALOBOS | 107
311015100 | JORGE MEZA CERVANTES | 09499386
Pythonの結果:
795719000 | MARIA TERESA MARROU VILLALOBOS | 107
259871385 | CHRISTIAM
編集:私が使用しようとしたPythonファイルcoding: utf-8
でcoding: iso-8859-1
(同時に両方ではありません)。
編集:私はbpythonでコーデックを使用しましたが、それはうまく機能します。ファイルから使用すると、望ましくない結果が得られます。
編集:私はLinux(Ubuntu 9.10)とPython2.6.2を使用しています。
助言がありますか?
php - PHP インストールで iconv モジュールをアップグレードするにはどうすればよいですか?
iconv ライブラリ バージョン 2.5 を使用して Windows 2003 サーバーに PHP をインストールしようとしています。ただし、PHP 5.2.13 バイナリをダウンロードしてインストールしようとすると、iconv ライブラリのバージョンが 1.1 と表示されます。
このモジュールだけをアップグレードする方法はありますか? 何か不足していますか?
utf-8 - 文字化けした中国語のファイル名を修復することは可能ですか?
FTP経由で中国名(BIG5エンコード)のファイルをダウンロードしていますが、Filezillaはそれらのファイル名をガベージとして表示します(FTPはASCIIとUTF-8以外のエンコード、少なくとも標準準拠のものを処理できないため)。
文字化けした文字を含むファイル名が与えられた場合、ソースエンコーディングをすでに知っているので、エンコーディングを修復して適切なファイル名文字列を取得することは可能ですか?FTPクライアントはBIG5をUTF-8として誤って解釈し、BIG5への変換を困難にするバイトを挿入しますか?
私が提案した手順(Javaの場合):1。Fileオブジェクトを使用して文字化けしたファイル名を取得します。2.UTF-8を使用したgetbytes。3.BIG5のそれらのバイトを使用して新しい文字列を作成します。4.デコードされたファイル名をファイルに書き戻します。
上記の方法は機能しますか?
utf-8 - 非ラテンベースのエンコードされたテキストを UTF-8 に変換する方法、またはそれらを同じページに共存させる方法は?
良い一日、
charset=UTF-8
リモートページのタイトル/説明をスクレイピングし、それらの値を対応するエンコードされたページに出力するスクリプトがあります。ここに問題があります。リモート ページが非ラテン文字エンコーディング (アラビア語、ロシア語、中国語、日本語など) でエンコードされている場合は常に、インポートされた値が文字化けしたテキストとして出力されます。
iconv
これらの値をまたはコンバーターを介して渡そうとしましmb_convert_encoding
たが、あまり成功しませんでした。
次に、最初にリモート エンコーディングを検出してみました。次に、プレゼンテーション ページのエンコーディングを現在の utf-8 ではなくリモート エンコーディングに変更しました。これは、インポートされた値で問題なく動作しますが、ページ上のその言語の他の既存の utf-8 コンテンツは代わりに文字化けします。
例:
これらの値をロシア語から、windows-1251
英語とロシア語のコンテンツが混在する UTF-8 でエンコードされたページにインポートしようとするとします。iconv または mb_convert_encoding を使用して、インポートされた非 utf-8 文字列を utf-8 に変更します。
私は試しました:
$RemoteValue = iconv($RemoteEncoding, 'UTF-8', $RemoteValue);
または
$RemoteValue mb_convert_encoding($RemoteValue, "UTF-8", $RemoteEncoding);
または
$RemoteValue mb_convert_encoding($RemoteValue, "UTF-8", "auto");
成功しませんでした。
リモート ページがwindows-1251
エンコードされていることを検出し、プレゼンテーション ページ (既に UTF-8 でエンコードされた混合言語コンテンツを含む) をリモート ページに類似するように変更すると、既存のページの日本語の utf-8 コンテンツが文字化けします。 .
- 2 つの異なるエンコード文字列が同じページに共存できますか (例: utf-8 & windows-1251)?
- コンバーターを正しく使用していますか? それらが機能しない理由についてのヒントはありますか?
- これを行うより良い方法はありますか?
ご協力ありがとうございました
ruby-on-rails - jruby 1.8文字列をWindowsエンコーディングに変換しますか?
jruby on rails webappからExcelにデータをエクスポートしたいので、csv文字列を作成し、を使用してダウンロードとしてクライアントに送信します。
ファイルはExcelが正しく読み取れないUTF-8にあるようです。私は問題をグーグルで検索し、iconvがエンコーディングを変換できることを発見しました。私はそれをしようとします:
しかし、変換されたテキストを送信しても、違いはありません。それはまだUTF-8であり、Excelは特殊文字を読み取ることができません。iconvを使用するいくつかの解決策があるので、これは他の人にとってはうまくいくようです。Linuxシェル上のファイルをiconvを使用して手動で変換すると、機能します。
私は何が間違っているのですか?もっと良い方法はありますか?
使用しているもの:-jruby 1.3.1(ruby 1.8.6p287)(2009-06-15 2fd6c3d)(Java HotSpot(TM)Client VM 1.6.0_19)[i386-java]-DebianLenny-Glassfishアプリサーバー-Iceweasel3.0。 6
編集:iconvを使用するためにいくつかの宝石を含める必要がありますか?
解決策:S.Markはこの解決策を指摘しました:Excelに次のように理解させるには、UTF-16LEエンコーディングを使用する必要があります。
その答えをありがとう、S.Mark。
ruby - system() を介して Ruby から iconv を呼び出す
iconv ツールに問題があります。私はそのようにrakeファイルからそれを呼び出そうとします:
ただし、1 つのファイルが部分的に変換されます (部分的に変換されるサイズ: 10059092 バイト、変換前: 10081854)。この 2 つのファイルを比較すると、すべてのコンテンツが ASCII で書き込まれたわけではないことがわかります。このコマンドをシェルから明示的に呼び出すと、完全に機能します。他の小さなファイルは問題なく変換されます。iconv や Ruby の system() に制限はありますか?
php - Iconvを使用して可能な形式をUTF-8に変換する方法は?
たとえば、これは 1251 を utf-8 に変換します。
しかし、unknown (私たちに関しては、それがどのような形式かはまだわかりません) (一般的には any ) 形式 (おそらく Iconv で知られている) を utf-8 にするにはどうすればよいでしょうか? (コードサンプル)
c++ - libiconv --iconv_open()のデフォルトの動作?
iconv_open()のドキュメントによると:http ://www.gnu.org/software/libiconv/documentation/libiconv/iconv_open.3.html
「//TRANSLIT」は、ターゲット文字セットで文字を表現できない場合に、1つまたは複数の文字で近似できることを意味します。
と:
「//IGNORE」は、ターゲット文字セットで表現できない文字がサイレントに破棄されることを意味します。
しかし、どちらも指定されていない場合のデフォルトの動作は何ですか?
ありがとう、Doori Bar