Openステートメントのファイル番号につける#ってつけたほうがいいのですか?


ヨッシ−  2003-06-05 02:27:30  No: 107415

Openステートメントについて教えてほしいのですが、
以下の2つのプログラムを実行すると、プログラムA
の方だと、"C:\aaa.txt"のタイムスタンプが更新され
ますが、プログラムBの方だと、タイムスタンプが変わ
りません。
なぜ、プログラムBの方はタイムスタンプが変わらない
のかが分かりません。
分かる方がいましたら、ご教授ください。
環境は、
コンパイラ  Microsoft Visual Basic 6.0(SP3)
OS         Windows2000 Professional(SP3)
です。

------プログラムA------
Dim lngFileNo As Long
Dim strWork   As String

lngFileNo = FreeFile
Open "C:\aaa.txt" For Binary As lngFileNo
strWork = "aaa"
Put lngFileNo, , strWork
strWork = vbCrLf
Put lngFileNo, , strWork
strWork = "bbb"
Put lngFileNo, , strWork
strWork = vbCrLf
Put lngFileNo, , strWork
Close lngFileNo
----------------------

------プログラムB------
Dim lngFileNo As Long
Dim strWork   As String

lngFileNo = FreeFile
Open "C:\aaa.txt" For Output As #lngFileNo
strWork = "aaa"
Print #lngFileNo, strWork
strWork = "bbb"
Print #lngFileNo, strWork
Close #lngFileNo
----------------------


oku  URL  2003-06-05 07:13:48  No: 107416

試したのですが、どちらともタイムスタンプ変わりましたよ。
MSDNを見る限りでは、#付いてるんで自分は付けてます。
WinXP SP1
VB6.0 SP5


Loreley  2003-06-05 15:43:48  No: 107417

VBのヘルプでは
Open pathname For mode [Access access] [lock] As [#]filenumber [Len=reclength]
と、#は省略可能になってますね(知りませんでした)。
多分双方に違いはないと思います。

予想では昔のBASICのなごりで残してあるのだと思います。
ちなみに私も#をつけてます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加