C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: CSVファイル書出のダブルクォーテーションについて


(過去ログ 62 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■36051 / inTopicNo.1)  CSVファイル書出のダブルクォーテーションについて
  
□投稿者/ 新米 (6回)-(2009/05/19(Tue) 11:43:18)

分類:[.NET 全般] 

CSVファイル書出時(Unicode)、ダブルクォーテーションはDEFAULTで付けるんではないですか?
クリップボード中の文字列をCSVファイルに書き込む処理やってましたが、
ダブルクォーテーションを付けることはできませんでした。
原因はなんでしょうか?
引用返信 編集キー/
■36052 / inTopicNo.2)  Re[1]: CSVファイル書出のダブルクォーテーションについて
□投稿者/ 魔界の仮面弁士 (1076回)-(2009/05/19(Tue) 11:49:05)
2009/05/19(Tue) 18:12:48 編集(投稿者)
No36051 (新米 さん) に返信
> CSVファイル書出時(Unicode)、ダブルクォーテーションはDEFAULTで付けるんではないですか?

一概には言えません。CSV を処理するソフトの実装によって、
 「付けないといけない処理系」
 「付けてはいけない処理系」
 「どちらも認識する処理系」
のいずれのパターンも存在しています。

たとえば Microsoft Excel は、基本的に「"」を付けずに CSV を生成します。
ただし、データ中に「,」「"」もしくは改行(LF)が含まれる場合は例外的に、
その該当セルのデータのみを「"」で囲む仕様になっています。


なお、RFC4180 には、以下のように記載されていますね。
http://www.rfc-editor.org/rfc/rfc4180.txt

》   5.  Each field may or may not be enclosed in double quotes (however
》       some programs, such as Microsoft Excel, do not use double quotes
》       at all).  If fields are not enclosed with double quotes, then
》       double quotes may not appear inside the fields.  For example:
》
》       "aaa","bbb","ccc" CRLF
》       zzz,yyy,xxx

引用返信 編集キー/
■36053 / inTopicNo.3)  Re[1]: CSVファイル書出のダブルクォーテーションについて
□投稿者/ よねKEN (332回)-(2009/05/19(Tue) 11:50:05)
No36051 (新米 さん) に返信
> CSVファイル書出時(Unicode)、ダブルクォーテーションはDEFAULTで付けるんではないですか?

「誰が(何が)」付けるとお考えですか?

> クリップボード中の文字列をCSVファイルに書き込む処理やってましたが、

どのようにやったのでしょうか?

> ダブルクォーテーションを付けることはできませんでした。

ダブルクォーテーションを付ける様にコーディングしていないから、ではないですかね。

> 原因はなんでしょうか?

何をどうやったのかがまったく書かれていないので、
書かれたソースコードがダブルクォーテーションを付ける様にコーディングされていない、ということしかわかりません。

自分で作ったのではないクラスか何かを使ってCSVを出力しているのでしょうか?
そうであれば、そのクラスのヘルプで使用方法が間違っていないかを確認する必要があるでしょう。
自分で文字列処理を組んでいるのであれば、ご自身のコードがそういう作りになっていないだけでしょうから、そのような動作をするように改修する必要がありますね。

いずれにしてもご提示の情報ではこのくらいのことしか言えません。


引用返信 編集キー/
■36066 / inTopicNo.4)  Re[1]: CSVファイル書出のダブルクォーテーションについて
□投稿者/ ぱぱいやん (25回)-(2009/05/19(Tue) 16:59:36)
ぱぱいやん さんの Web サイト
No36051 (新米 さん) に返信
> CSVファイル書出時(Unicode)、ダブルクォーテーションはDEFAULTで付けるんではないですか?
> クリップボード中の文字列をCSVファイルに書き込む処理やってましたが、
> ダブルクォーテーションを付けることはできませんでした。
> 原因はなんでしょうか?

クリップボードの中のデータが最初から CSV 形式になっているとか限りません。
取得したデータを解析して、自分でカンマやダブルクォーテーションを必要に応じて付加してやる必要があります。
引用返信 編集キー/
■36068 / inTopicNo.5)  Re[2]: CSVファイル書出のダブルクォーテーションについて
□投稿者/ .SHO (831回)-(2009/05/19(Tue) 18:11:55)
> 》 5. Each field may or may not be enclosed in double quotes (however
> 》 some programs, such as Microsoft Excel, do not use double quotes
> 》 at all).

フィールド中に「,」が含まれる場合、Excelもダブルクォーテーションで囲みます。

> 》 If fields are not enclosed with double quotes, then
> 》 double quotes may not appear inside the fields

これも違うと思う。
まぁ、may not だからいいけど。。。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -