[497] エクスポートの文字コードについて
いっち [2019/03/30 07:48:36]
お世話になります。
エクスポートについて、質問します。
尚、私はCassavaの設定を、下記にしています。
文字コード
・ ロード時に文字コードを判別する
・ UTF-8を優先して使用する
----------------------------------------------------------------
まず始めに、Cassavaを起動して何か書いて、csvで保存し終了します。
但し、文字には✓(チェック)、🙆(おっけー)、🙅(ダメ)などの
シフトJISでは利用できない文字を含めます。
Cassavaで再度そのファイルを開いた時、文字化けなくきちんと開けます。
きちんと開けたファイルを、エクスポートしてみます。
エススポートに使うマクロは、下記を利用しました。
Cassava標準の
html.cms
Cassavaのホームページで公開されている
quote.csv.cms
cols.csv.cms
asukaze.tsv.cms
たいていの場合、エクスポートすると、シフトJISで保存され、
シフトJISでは利用できない文字が ? になります。
但し、UTF-8で保存され、シフトJISでは利用できない文字も
問題ない時が「たま」にあります。
「いつも確実」にUTF-8で保存され、シフトJISでは利用できない文字も
問題なくエクスポートするには、どうすればよいでしょうか?
尚、エクスポートのコマンドからエクスポートを実行させるより、
マクロからエクスポートを実行させる事の方が、私は多いです。
----------------------------------------------------------------
過去の記事
[92] エクスポートの文字コード
にて、解決しているはずの問題ですが、
私は現在、Cassavaの最新バージョンのVer2.0.5でしか動作しない
エクスポート用のマクロを書いています。
----------------------------------------------------------------
よろしくお願い致します。
Re: [497] エクスポートの文字コードについて
あすかぜ [2019/03/30 23:08:38]
ご指摘ありがとうございます。
こちらでも問題を確認しました。原因を調査してみます。
当面の間はバージョン 1.9 用にエクスポートマクロを書き直していただくしかなさそうです。
すみませんがよろしくお願いいたします。
Re: [497] エクスポートの文字コードについて
いっち [2019/03/31 00:00:38]
お返事ありがとうございます。
これまで、どのようにマクロを組んだら実現できるだろうと、ずっと考えていたものが、
Ver2.0.5なら、簡単にマクロを組めました。
私の場合「シフトJISでは利用できない文字」の利用は、「限られた数文字」だけなので、
当面の間は、エクスポート前に、文字を置換しようと思います。
Re: [497] エクスポートの文字コードについて
あすかぜ [2019/03/31 22:58:58]
不具合の原因が(おそらく)特定できたので、近いうちに修正したいと思います。
2.0.5 での回避方法ですが、Export() の実行前もしくはエクスポートマクロの先頭で
CharCode();
という一文を実行することで保存時文字コードがエクスポートマクロに反映されそうです。
試してみてください。
お手数おかけしてすみませんが、よろしくお願いします。
Re: [497] エクスポートの文字コードについて
いっち [2019/04/01 05:42:09]
おはようございます。
試していました。
CharCode();
という一文をエクスポートマクロの先頭に入れました。
下記のようになりました。
【テスト1】
1. エクスポートしたいcsvをCassavaで開く。
2. エクスポートを実行する。
3. エクスポートしたファイルは、UTF-8で保存され、文字化けは発生しません。
【テスト2】
4. テスト1を実行後、エクスポート前のcsvを上書き保存する。
5. 再びエクスポートを実行する。
6. Unicodeの文字のマッピングが、ターゲットのマルチバイトコードページに存在しません
というメッセージが表示される。
7. その後作られているファイルは、文字化けしています。
【テスト3】
4. テスト1を実行後、エクスポート前のcsvを上書き保存しないで再びエクスポートを実行する。
5. ○○○.csvへの変更を破棄しますか?
というメッセージが表示される。
6. メッセージに対して、「はい」もしくは「いいえ」を選択する。
7. いずれを選択しても、その後作られているファイルは、文字化けしています。
-------------------------------------------------
上記のようになりました。
Re: [497] エクスポートの文字コードについて
あすかぜ [2019/04/01 08:41:58]
たしかにエクスポートマクロ中で CharCode(); を実行するとエクスポートマクロ終了時に文字コード設定がおかしくなってしまいますね。すみません。
そのあたりもバージョンアップ時に修正したいと思います。
エクスポートマクロ内ではなく、Export(...) を呼び出す側のマクロで Export(...) の前に CharCode(); を実行すればこの問題は発生しないのではないかと思います。
(その場合、通常のメニューからエクスポートを実行すると文字化けしますが。。。)
Re: [497] エクスポートの文字コードについて
いっち [2019/04/01 17:26:16]
>エクスポートマクロ内ではなく、Export(...) を呼び出す側のマクロで
>Export(...) の前に CharCode(); を実行すればこの問題は発生しないのではないかと思います。
何度か、繰り返して実行してみました。
私が確認してみた限り、その通りでした。
念の為、ご報告致します。
Re: [497] エクスポートの文字コードについて
あすかぜ [2019/04/07 17:47:39]
修正版としてバージョン 2.0.6 を公開しました。
回避用の命令を入れなくても保存時文字コードがエクスポート時に適用されるはずです。
よろしくお願いします。
Re: [497] エクスポートの文字コードについて
いっち [2019/04/07 20:48:08]
確認致しました。
Ver2.0.6 ありがとうございます。