FreeBASIC マニュアルのトップに戻る

FreeBASIC FILEFLUSH

目次→実行時ライブラリー参考→オペレーティング・システム関連FILEFLUSH←オリジナル・サイト

FILEFLUSH 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい


アプリケーション・ストリーム・バッファや、システム・バッファを、ファイルにフラッシュ(書き込む)します。

構文:
declare function FileFlush ( byval filenum as long = -1, byval systembuffers as long = 0 ) as long

用法:
#include "file.bi"
result = FileFlush()
result = FileFlush( filenum )
result = FileFlush( filenum, systembuffers )


パラメータ:
filenum
拘束されたファイルまたはデバイスの、ファイル番号。
指定しないか、-1 の場合、開いているすべてのファイルをフラッシュします。
systembuffers
ゼロ以外の場合、システム・バッファを、物理デバイスにフラッシュします。
デフォルトはゼロ(0)です。

戻り値:
成功すると、ゼロ(0)を返し、ファイル・バッファをフラッシュできなかった場合は、エラーコードを返します。

内容:
FileFlush は、アプリケーション・バッファリングされた出力を、基になるストリームに書き込みます。
systembuffers がゼロ以外の場合は、基になる物理デバイスにも書き込みます。

FileFlush(filenum) の形式で、特定のファイルのアプリケーション出力バッファーが、書き込まれます。
また、FileFlush という形式で、すべてのアプリケーション・バッファが、システムに書き込まれます。
通常、ファイルを開くと、ストリームは、binaryrandom ファイル用にブロック・バッファリングされ、appendoutput ファイル用に、ライン・バッファリングされます。
FileFlush 関数は、アプリケーションの通常のバッファリングを上書きし、バッファリングされた出力を、すぐにシステムに書き込みます。
システムには、独自のバッファもあります。

FileFlush(filenum,1) の形式では、アプリケーション・バッファはフラッシュされ、基礎となるシステムバッファは物理デバイスにフラッシュされます。
FileFlush(,1) の形式では、すべてのアプリケーションバッファーがフラッシュされ、すべての基になるシステムバッファーが物理デバイスにフラッシュされます。

例:
#include "file.bi"

Dim As Long f1, f2
Dim As String s

Print "File length", "File string"

f1 = FreeFile
Open "fileflushtest.txt" For Output As #f1
Print #f1, "successful file flush"

f2 = FreeFile
Open "fileflushtest.txt" For Input As #f2
Line Input #f2, s
Print FileLen("fileflushtest.txt"), "'" & s & "'"  '' the string is not yet physically written to the file

Fileflush(f1)
Line Input #f2, s
Print FileLen("fileflushtest.txt"), "'" & s & "'"  '' the string is now physically written to the file

Close #f2
Close #f1

Sleep


出力 (Windows):
File length   File string
 0            ''
 23           'successful file flush'


バージョン: QBからの違い: 参照:
オペレーティングシステム関連 に戻る
←リンク元に戻る プログラム開発関連に戻る
ページ歴史:2021-10-11 09:34:00
日本語翻訳:WATANABE Makoto、原文著作者:JeffMarshall

ホームページのトップに戻る

表示-非営利-継承