- - PR -
VB6のファイル出力にてNullを出力するには?
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-03-22 12:20
初歩的な質問だと思いますが、宜しくお願い致します。
SQLServerのあるテーブルへ、バッチによる一括データの込を行う為に、 VBからデータの出力(TAB区切り)を行っております。 仕様上一部項目をNullにする必要があり、該当項目にNullを出力したいのですが CHR(0)やvbNullChar等を使用しますと、Nullでは無くスペースが出力されます。 Nullで出力する方法は無いのでしょうか? Open strFileName For Output As fn Len = 32000 'ACCESS内の指定テーブルがEOFになるまで続ける Do Until adoRS.EOF rec = "" For i = 0 To adoRS.Fields.Count - 1 strArea = adoRS(i) If IsNull(strArea) Then strOut = CHR(0) '<---Nullをセット出来ない!! Else strOut = strArea End If rec = rec & RTrim(strOut) & vbTab Next Print #fn, Left(rec, Len(rec) - 1) adoRS.MoveNext Loop Close fn adoRS.Close | ||||||||
|
投稿日時: 2004-03-22 12:58
どうやって確認されたんでしょうか? NULL文字は文字として表現できないため半角スペースや黒く塗りつぶしたりして 表示されます。(どう表示するかはエディタによります。) 追記 WinXPのメモ帳、秀丸では半角スペース表示されるようです。 チェックプログラムを作成するかバイナリエディタで確認してみてください。 [ メッセージ編集済み 編集者: ぼると 編集日時 2004-03-22 13:23 ] | ||||||||
|
投稿日時: 2004-03-22 13:43
現在の開発環境にバイナリエディタが無く、秀丸で見ておりました。 バイナリエディタをDLして見直してみます。 | ||||||||
|
投稿日時: 2004-03-22 13:47
まず、値としてのNullと、NULL文字の区別ってついてます?^^;
strOutにセットしているのは、ぼるとさんがさらっと言ってますけど、 NULL文字です。 >Nullで出力する方法は無いのでしょうか? というのが気になったのですが、、、 | ||||||||
|
投稿日時: 2004-05-26 19:25
[ メッセージ編集済み 編集者: ごん 編集日時 2004-05-27 09:37 ] |
1