私の現在の解決策は、ファイルのすべてのバイトを読み込み、デコードしようとします。例外があれば、このファイルは適切にエンコードされません。他のよりエレガントな方法?ありがとう。Python 2.7ファイルがUTF-8でエンコードされているかどうかを確認します。
utfbytes.decode('utf-8')
に関して、 林
私の現在の解決策は、ファイルのすべてのバイトを読み込み、デコードしようとします。例外があれば、このファイルは適切にエンコードされません。他のよりエレガントな方法?ありがとう。Python 2.7ファイルがUTF-8でエンコードされているかどうかを確認します。
utfbytes.decode('utf-8')
に関して、 林
No。その答えから:
エンコードを常に正しく検出することは不可能です。
(chardetよくある質問:)
しかし、いくつかのエンコーディングは、特定の言語用に最適化され、そして言語がランダムではないですから。他のシーケンスは意味をなさないものの、一部の文字シーケンスは常にポップアップします。新聞を開いて「txzqJv 2!dasd0a QqdKjvz」という英語を堪能な人は、それが英語ではないことを即座に認識します(全部英語の文字で構成されています)。多くの "典型的な"テキストを研究することによって、コンピュータアルゴリズムはこのような流暢さをシミュレートし、テキストの言語についての知識を推測することができます。
はしかし、試してみて、エンコードの種類を見つけるための最善の努力をしないと存在しsome librariesがあります。
Nick、ありがとう。サードパーティのライブラリを使用しないと、Python 2.7の組み込みソリューションを活用している私の現在のソリューションはすでに優れていますか? –
例外を処理する限り、ソリューションは完璧に見えます! –
ありがとう、ニック。良い週末を。あなたの返事に答えて、答えてください。 –
[Python:テキストファイルのエンコーディングを判断する方法はありますか?](http://stackoverflow.com/questions/436220/python-is-there-a-way-to-determine-the -encoding-of-text-file) –
ありがとう@DeanFenster、投票アップ。サードパーティのライブラリを使用しないと、Python 2.7の組み込みソリューションを活用している私の現在のソリューションはすでに優れていますか? –