一部のデータをCSVファイルにエクスポートするアプリケーションの一部を開発しています。アプリケーションは、すべてのレベルで多言語性を備えているため、常にUTF-8を使用します。しかし、そのようなCSVファイル(発音区別符号、キリル文字、ギリシャ文字を含む)をExcelで開くと、次のような期待される結果が得られませんГ„/Г¤, Г–/Г¶
。また、開いているCSVファイルがUTF-8でエンコードされていることをExcelに強制的に理解させる方法がわかりません。またEF BB BF
、UTF-8 BOMを指定してみましたが、Excelでは無視されます。
回避策はありますか?
PSどのツールがExcelのように動作する可能性がありますか?
更新
私はコミュニティを質問の定式化と混同したと言わざるを得ません。この質問をしているときに、ExcelでUTF-8のCSVファイルを問題なく、流暢で透過的な方法で開く方法を求めました。しかし、私はそれを自動的に行うことを求める間違った処方を使用しました。これは非常に混乱し、VBAマクロオートメーションと競合します。私が最も感謝しているこの質問には2つの回答があります。Alexによる最初の回答https://stackoverflow.com/a/6002338/166589と、この回答を受け入れました。そしてマークによるhttps://stackoverflow.com/a/6488070/166589少し遅れて登場しました。使いやすさの観点から、ExcelはユーザーフレンドリーなUTF-8 CSVサポートが不足しているように見えたので、両方の答えが正しいと考え、Excelは実際には実行できなかったと述べたので、最初にAlexの答えを受け入れました。透過的に。ここで私は自動的に混乱しました。マークの答えは、より高度なユーザーが期待される結果を達成するためのより複雑な方法を促進します。どちらの回答も素晴らしいですが、Alexの回答は、明確に指定されていない質問に少しよく適合します。
アップデート2
最後の編集から5か月後、何らかの理由でアレックスの回答が消えていることに気づきました。私はそれが技術的な問題ではなかったことを本当に望んでおり、どの回答がより優れているかについてこれ以上議論がないことを願っています。だから私はマークの答えを最高のものとして受け入れています。
\t
区切り文字を含むUTF-16LE 。英語および英語以外のExcel設定で機能します。Ctrl-S
ファイル形式などを選択せずに押すことができます。Unicode文字は保持されます。