pythonでUnicodeテキストで保存されているEXCEL形式のcsvをカンマ区切りのcsvのに変換するファイルを作成したいのですがカンマ区切りのcsvに変換すると別々のセル単位で保存されていたファイルが1個のセルになっていました。(例:A1~A5まで別れたデータがA1の身になった状態)
カンマ区切りに変換されてもセルに分けられたデータのまま保存されるようにしたいのですがうまくいきません。
ご教示をお願いします。
下記にコードを記載します。
import csv
with open('6.csv', encoding='utf16') as f_in:
with open('6-1.csv', 'w', encoding='utf8') as f_out:
f_out.write(f_in.read())
コードの2行目でUnicodeテキストのファイル6.csvを読み込みコードの3行目で6-1.csvにカンマ区切りとしてファイルを生成しています。
私の勉強不足かもしれませんが、「EXCEL形式のcsv」とはどういう形式なのか教えていただけますか?
csvとは狭義にはcomma separated valueつまりカンマ区切りのことなので。
6_csvと6-1.csvを、質問の問題が確認できる行だけでも提示していただくことはできますか?
可能ならここに書くのではなくて質問を編集してください。
> カンマ区切りのcsvに変換すると別々のセル単位で保存されていたファイルが1個のセルになっていました。
これは"テキストの中身"の話をしているのではなくて、Excel(など)の"アプリケーションで開いた時"の挙動の話をしていますね。
Pythonのタグが付いていますが、どちらかというとそのアプリケーション固有の仕様に関する質問の様に感じます。
つまり
1. そのアプリケーションで開いた時の挙動が意図通りになるためにはデータがどうなっていなければならないか
2. その形式で書くためのPythonのコードはどういうものか
という2段階の要素があって、1. にはPythonは関係ありません。
きっとExcelだろうと思いますが、明ではありません。説明とタグを追加するべきでしょう。
「どうやって開いたか」の操作の手順も書き添えた方がいいかとも思いました。(他人が検証するのに必要です)
あなたの回答
tips
プレビュー