![]() ![]() ![]()
|
SophiaFramework 2.2 |
SFUFileStream は、ファイルに対する入出力を実装しています。
ここではファイルからデータを読み取るサンプル コードを使って説明します。
![]() |
Tip |
|---|---|
BREW のファイル機能を使用するときは、 MIF ファイルの設定で、アプレットの [File] 特権レベル を有効にする必要があります。 | |
Void TestFile() {
SFUFileStream fstr;
fstr.Open("test.txt", _OFM_READ);
if (fstr.Exception() != SFERR_NO_ERROR) {
TRACE("Cannot open");
return;
}
TRACE("available %d", fstr.Available());
while (! fstr.IsEOS()) {
UInt08 ch;
fstr >> ch;
TRACE("%c", ch);
}
TRACE("REWIND!");
fstr >> seek(0);
fstr >> offset(2);
while (! fstr.IsEOS()) {
UInt08 ch;
fstr >> ch;
TRACE("%c", ch);
}
}
ファイルをオープンするためには、 Open 関数を使用し、ファイル名とオープン モードを指定します。 ファイルがオープンできない場合、 Exception() 関数は SFERR_NO_ERROR 以外の値を返します。 ここでは、BREW モジュールと同ディレクトリに存在する test.txt というファイルをオープンしています。
Available 関数は、ストリームの現在位置から数えて、 どれぐらいのデータが存在するかを返します。 データが存在しない場合、 IsEOS TRUE になります。
データはエクストラクタによりさまざまなデータ型で取得できます。 ここでは UInt08 型として 1 文字ずつ読み取っています。
ファイル位置をシークするには、マニピュレータ seek(n) や offset(n) を使用できます。
| Copyright(C) 2003-2004 Sophia Cradle Inc., All Rights Reserved. |
![]() ![]() ![]()
|