- - PR -
CSV ファイル出力で "" を消すには?
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-12-18 12:18
[OSのVER]:WINDOWS XP
[VBのVER]:VisualBasic6.0 お世話になります。VB初心者のきんこんと申します。 現在、CSVファイル出力のソースを作成しているのですが、 テキスト形式で出力したCSVファイルを確認すると、 ""が入ってしまいます。これはどうしたらなくして 出力できるのでしょうか? 不足情報があれば、追記いたします。 初心者の質問ですが、よろしくお願いします。 ソース ****************************************************** ' ファイルオープン Open OutputFileName For Output As #myFIleNo Do Until myrec.EOF = True Write #myFIleNo, , , , Format$(myrec.Fields(0).Value, "00000") & Format$(Right(myrec.Fields(1).Value, 6), "000000") & Format$(myrec.Fields(2).Value, "000") & Format$(Right(myrec.Fields(2).Value, 2), "00") & "0", myrec.Fields(12).Value, myrec.Fields(17).Value, myrec.Fields(13).Value, myrec.Fields(14).Value, myrec.Fields(15).Value & myrec.Fields(16).value, myrec.Fields(18).Value myrec.MoveNext Loop myrec.Close Close #myFIleNo MsgBox "CSV形式ファイル出力処理は成功しました。" & Chr(13) & Chr(13) & "出力場所:『" & OutputFileName & " 』" ****************************************************** 出力したCSVファイル ****************************************************** ,,,,"90901060423003030","XXXXX","8300063","久留米市荒木町東山XXXXX",,,, ,,,,"90901060423004040","XXXXX","8300063","久留米市荒木町東山XXXXX",,,, ,,,,"90901060423006060","XXXXX","2970112","千葉県長生郡長南町米満49−1",,,, ****************************************************** | ||||
|
投稿日時: 2006-12-18 12:31
逆にそれがあると、どんな問題があるのでしょうか。
"がないとしたら、例えばカンマ入りのデータはどう表すと思いますか。 | ||||
|
投稿日時: 2006-12-18 12:48
ダブルクォーテーションが必要ないなら、Print関数を利用すると
出さないようにできます。 ところで質問内容を見て思ったのですが、RFC準拠なCSVファイルを 作成しようとしているのでしょうか? | ||||
|
投稿日時: 2006-12-18 13:21
返信ありがとうございます(^^)
PRINTに変更したおかげで直りました。 ””を付けない理由は、他業者の他システムにデータを 連動するのですが、午後3時につけない意味が分かります。 (付けた場合、バグがおこれば消すし、付けないでバグを おこせば、付けます。文字列の問題等も含め、他システムより インポートしてみないと分かりません、、、、) | ||||
|
投稿日時: 2006-12-18 13:24
>ところで質問内容を見て思ったのですが、RFC準拠なCSVファイルを
>作成しようとしているのでしょうか? 指示通りに動いているため、わかりません。又、知識不足のため、RFC準拠なCSVファイルがどうゆうファイルかわかりません、、、 もしかしたら、『RFC準拠なCSVファイル』が重要なキーワードな気がするので 後で調べてみます。 | ||||
|
投稿日時: 2006-12-18 16:35
すでに調べられているとは思いますが、RFC4180になります。ただ各フィールドを(必要のないときに)二重引用符で括ってはいけない・・ということではないので、面倒なときは「括ってしまえ」ということにしますね(もちろん文字列内の二重引用符はキチンと処理しますが)。 #このあたり(括る|括らない)でバグになるようだと、その方がちょっとどうかとは思う(汗 | ||||
|
投稿日時: 2006-12-18 18:39
仕事が終わりましたので、結果報告いたします。
>#このあたり(括る|括らない)でバグになるようだと、その方がちょっとどうかと>は思う(汗 おっしゃるとおり、とりあえず、文字列等に””がはいってなくても、OKでしたので PRINTで統一します。 >RFC4180 調べましたが、難しいですね、、、、、、 基準の内容は落ち着いたら調べようと思いますが、今回のシステムには 関係なさそうなので、とりあえず保留としておきます。 余談ですが、他システムには私のPGのCSVファイルは取り込めませんでした。 手修正してなんとか直りましたが、、、、 原因は仕様(IN/OUTをどのように加工してどのように出力するかきちんと きめてないという事でした。) 簡単なPGだから仕様は作らんでもいいと思ったけど、仕様作りが先という お粗末な結果に終わりました、、、、、、 | ||||
|
投稿日時: 2006-12-18 19:35
えっと、なぜそちらの結論になってしまったのでしょう? 引用符があった方が良いと思います。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |