- - PR -
ClipBoardの文字化けに関して
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-06-01 09:24
VS2005 Express Edition
OS:2000 Pro の環境にて DataGridViewで表示された日本語情報をクリップボードにコピーして Excel等に吐き出すと文字化けしてしまいます。 (DataGridView上では文字化けしていません) DataGridViewのプロパティ等を見たところ特に文字セットを 入れるものがなかったのですが、(クリップボードの方がまずいのかもしれませんが) なにか回避策等ご存知の方、設定の方法等教えていただけないでしょうか? | ||||||||
|
投稿日時: 2006-06-01 10:32
つい先日、同様のコードを書きましたが、何の問題も無くコピーできましたよ?
差し支えなければ、どのような文字なのかと、クリップボードにコピーする部分のコードを提示していただけませんか? | ||||||||
|
投稿日時: 2006-06-01 11:44
御回答ありがとうございます。
文字なのですが、 あとえば ”部品有”という言葉が"iL" になってしまいます。 また、コピーというのはDataGridViewでctrl + Aを押して Excelでctrl + Vを押すオペレーションです。 (言葉たらずで申し訳ありませんでした。。。) | ||||||||
|
投稿日時: 2006-06-01 15:35
ちなみに、ctrl + Aって全体選択ではありませんか? と言う事で、ctrl + C して・・・としたら、本当ですね。 僕のところでも文字化けしました。 ctrl + C に対応しているなんて思ってもいませんでしたので、僕がやってうまくいったというのは、自分でコピーさせていたからでした。
これだとうまくいきますが・・・ | ||||||||
|
投稿日時: 2006-06-01 16:52
こちらで同様の方法をやってみたのですが、
やはり文字化けしてしまいます。。。 | ||||||||
|
投稿日時: 2006-06-01 17:47
すみません。外していたみたいです。テキストエディタに貼り付けて問題なかったので、てっきり大丈夫なものだと思っていました。(__;) 僕の示したサンプルコードでも、ctrl+c でも Excel 自体に貼り付けた時に化けているようです。 | ||||||||
|
投稿日時: 2006-06-01 18:06
こんにちは。
調べてみると、ちょっとあやしい動作をしているようですね。 DataGridView でコピーをした時点での Clipboard オブジェクトのフォーマットは
となっています。少なくとも Excel に貼り付けようとして文字化けが起きているのは、 Excel が HTML Format を解釈しようとして失敗(と言っていいものか)しているのだと 思います。 Excel に貼り付けるときに、右クリック→形式を選択して貼り付け→テキストを選べばな んとか。 ちなみに DataGridView を使っているプログラムを終了させてから見てみると
こんな感じです。この状態なら Excel に貼り付けても大丈夫ですが…フォーマットが少な くなっているのは、いろいろと裏でなにかやられているんでしょうね(.NET Framework が)。 | ||||||||
|
投稿日時: 2006-06-01 21:10
皆様有難う御座いました。
Excelにテキストとして貼り付ける方法、、、 考えても見ませんでした。 また仕様に関しても理解できました。 有難う御座います。 |