
Ubuntu日本語フォーラム

ログインしていません。
タイトル通りなのですが、Thunderbirdのアドレス帳インポートにて、.csv形式でOEで使用していたアドレス帳をインポートしたのですが、文字化けだらけですが、どうしたら正常にインポートできるのでしょうか?
オフライン
出きるのであれば、OEで export するときに、文字コード指定(UTF-8)する。
出来なければ、export したファイルの文字コードを変換する。
(gedit で、文字コード指定して読み込み、字コード指定して書き出せば OK)
オフライン
si様
ありがとうございます。
記載頂いている様に行ってみたのですが、OEからエクスポート時には、Unicodeにてはできなかったので
ubuntuにてgeditで取り込むときに、Unicodeにて読み込もうとしても、読み込めませんでした。
なので、普通に開き保存時にUnicodeにて保存してみて、Thunderbirdのアドレス帳にインポート
しましたが、文字化けだらけです….。
どのようにしたらよいのでしょうか?
また、Gmailのアドレス帳からも.vcfファイルにてもエクスポートをしてみたのですが、
Thunderbirdにてインポート指定にて.vcfファイルはないのでしょうか?
何卒、よろしくお願い申し上げます。
オフライン
Hiho!
文字変換についてはWikiが用意されています。;)
テキストファイルの文字コードを変換するには
オフライン
HiroKws様、
アドバイス誠にありがとうございます。
しかし、どうしても、文字化けしてしまいます。
.csvファイルを読み込む時に、「現在のロケールunicode(UTF-8)で開けませんでした。」
とメッセージが出ますので、エンコードを西欧(ISO8859-15)で開くことはできましたが、
その後、UTF-8で保存したのですが、その.csvファイルをダブルクリックで開く時、OpenOfficeorgが起動して、その時にまたエンコードを聞かれたので、再度UTF-8を指定しましたが日本語部分が文字化けしてしまいます….
その後、テキストエディタで、再読み込みの際にエンコードの追加がありましたので、日本語の3つを追加して読み込んでみましたが、その時点で文字化けです。
その後、一応UTF-8で「別名保存」しましたが、OpenOfficeorgで同現象となります。
オフライン
export した csv ファイルのエンコードはなんでしょうか? UTF-8 でエクスポート出来ていないものを UTF-8 で読み込もうとしても上手くいかないのは当然です。読み込み時に正しく読めてないのですから、いくら UTF-8 で保存しなおしてもだめです。
まず csv ファイルのエンコードを調べる。次にそのエンコードを UTF-8 に変換する。という手順を踏む必要があります。
例えば nkf を使うならば
$ sudo apt-get install nkf
$ nkf -g hoge.csv <- これでエンコードが解ります
としてみてください。
オフライン
mizuno様
sudoコマンド?はインストールできたのですが、
その後の
nkd -g address.csv
を実行すると
No such file or directory
と出てしまいます・・・。
一応デスクトップに保存してあるので
home/user/デスクトップ/nkd -g address.csv
としているのですが・・・。
ディレクトリ指定間違っていますでしょうか?
オフライン
hiho
home/user/デスクトップ/nkd -g address.csv
nkdはコマンドですから、最初に入力してください。ファイルをフルパス、つまりディレクトリを全部指定するときには先頭の/から記述します。ですから、
nkd -g /home/user/デスクトップ/address.scv
と記述するか、自分の作業をしたいディレクトリへ最初に移動してから、コマンドを入力します。
cd デスクトップ nkd -g address.csv
オフライン
universe による投稿:
nkd -g address.csv
を実行すると
No such file or directory
と出てしまいます・・・。
nkd ではなく nkf です。ネットワーク漢字フィルタ、です。
パッケージからインストールすれば /usr/bin/ に配置されるので、コマンドのフルパスは必要ありません。パスの記述が必要なのは、引数として渡す address.csv の方です。もちろんカレントディレクトリにファイルが存在する場合はこの限りではありません。
オフライン
geditも、emacsとかgvimと同様、簡単に、文字コード変更可能なはずですが...
1: gedit で「ファイル」ー「開く」でのファイル読み込みメニュー下部の
エンコーディング:「自動判別」となっている、プルダウンメニューで、
最下部にある「追加と削除」を選択し、各種日本語エンコーディング追加します。
2:ファイルを開きます。
普通は自動判別して読めるはずですが、上手く開けない場合は、
エンコーディング:「自動判別」を、フルダウンメニューで直接指定して開きます。
3:「ファイル」ー「別名で保存」から、読み込んだエンコーディングを
エンコーディング:「現在のロケール(UTF-8)」
に変更し保存する
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
最後の編集者: kiyoshi (2008-08-23 14:36:32)
オフライン
あっ、どもども。
コマンド間違っていましたね。=D
まあ、それはさておき、私は普段、siさんが説明されている、geditをまず使用します。と、言っても年に数回しか必要はありませんが。
基本的に、読み込みの際にどのエンコードを使用するのか指定するのですが、コードの形式が間違っていたり、複数のコードが混じっていると、読み込めないと叱られるみたいです。
そんな時は、先に紹介したページでコマンドを思い出し、とにかく変換して、一番うまくいく方法をとります。
そこら辺は、柔軟に、一つのやり方にこだわらず、結果を求めましょう。
オフライン
皆さん、アドバイス誠にありがとうございます。
nkf -g /home/user/デスクトップ/address.csv
にて実施したところ、UTF-8と出ました。
サンダーバードにインポートすると文字化けしてしまいます….
なぜなのでしょう・・・
もとの、csvファイルが問題なのでしょうか・・・
オフライン
universeさん による投稿:
記載頂いている様に行ってみたのですが、OEからエクスポート時には、Unicodeにてはできなかったので
ubuntuにてgeditで取り込むときに、Unicodeにて読み込もうとしても、読み込めませんでした。
なので、普通に開き保存時にUnicodeにて保存してみて、Thunderbirdのアドレス帳にインポート
しましたが、文字化けだらけです….。
確認ですが、何を利用して「普通に開いた」のでしょうか?これを行ったのはWindows上の作業でしょうか?(windows上でエディターを使用して、保存時にコードを指定したということでしょうか?その前提で話を進めます)
保存時のUnicodeですが、UTF-8=unicodeではありません。UTF-8はunicodeを保存するときの一つの形式です。他にもUTF-16とか、バリエーションがありますから、まず、これを確認してくださいね。
たぶんoutlook expressから、出力された時点ではShift-JISで、それをそのままwindowsで加工せずに、Ubuntuに持ってきて、変換してみてはいかがでしょうか?(とはいっても、私の場合、XPでエディターを利用しUTF-8で保存した場合、Ubuntu上で文字化けしたことはありませんけれど。)
それを以下の形式で変換してください。
nkf -w (変換したいファイル名) > (新しいUTF-8のファイル名)
変換後のファイルをgeditで読み込んでください。もし、読み込めないときは、元のアドレス帳のデーターにUTF-8で使用できない文字コードとか含まれていないか確認してみましょう。
ここでgeditで読み込めるなら、コードの問題はありません。
サンダーーーバーードーーー♪♫♪♫で読み込んでみましょう。
オフライン
HiroKws様
丁寧なアドバイスありがとうございます。
少し時間のある時に実施してみます。
また、ご報告致します。
オフライン
皆様、様々なアドバイスならびにご解答ありがとうございます。
OEからのエクスポートしたアドレス帳ではなく、Windows Live メールから
アドレス帳を新たにエクスポートして、ubuntuのデスクトップにコピー後貼り付けて、
エンコードを
nkf -g address.csv
にて、確認したところ、UTF-8となっていたのと
アイコン内に「名,姓‥・。」などが、
透けて見えていたので、
そのまま、サンダーバードにインポートした所、正常にインポートされました。<(_ _)>
ありがとうございました。
結局、何がいけなかったのか良かったのか今一わかりませんでしたが、
(自分の知識の無さが一番ですが<(_ _)> )
無事、出来ました事をご報告致します。
元のOEからエクスポートした.csvファイルがおかしかったのしょうか…。
(-ω-;)ウーン
オフライン