前のページ次のページ上に戻るホーム SophiaFramework 2.2
SFBFileMgr
IFileMgr インターフェイスのラッパークラス。
#include <SFBFileMgr.hpp>
class SFBFileMgr : public SFBBase;
typedef SFBFileMgr&          SFBFileMgrRef;
typedef SFBFileMgr*          SFBFileMgrPtr;
typedef SFBFileMgr**         SFBFileMgrHandle;
typedef const SFBFileMgr     ConstSFBFileMgr;
typedef const SFBFileMgr&    ConstSFBFileMgrRef;
typedef const SFBFileMgr*    ConstSFBFileMgrPtr;
typedef const SFBFileMgr**   ConstSFBFileMgrHandle;

継承図

SFBFileMgr クラスの継承図

参照

BREW API IFileMgr | SFBFile

バグ情報

IFILEMGR_EnumNext, IFILEMGR_EnumNextEx
バグ BREW SDK 2.1 以前のエミュレータ

BREW SDK 上では、 これらの関数で正常なファイル作成日時を取得することができません。 実機上では正しい値を取得できます。

メンバ

パブリック関数
public
AddRef (SFBBase から継承) インターフェイスの参照カウントをインクリメントします。
public
EnumInit 指定したディレクトリ内のファイルやディレクトリを列挙するための初期化を行います。
public
EnumNext ファイルやディレクトリの情報を列挙します。
public
EnumNextEx ファイルやディレクトリの拡張情報を列挙します。
public
GetFileUseInfo モジュールのファイル使用情報を取得します。
public
GetFreeSpace ファイルシステムで現在使用可能な空きバイト数を取得します。
public
GetInfo ファイル名で指定されたファイルの情報を取得します。
public
GetInfoEx ファイル名で指定されたファイルの拡張情報を取得します。
public
GetLastError この関数は、アプレットで実行したファイル操作が失敗し、 失敗の理由を取得する必要がある場合に使用します。
public
static
Instance IFileMgr インターフェイスのインスタンスを取得します。
public
MkDir 指定されたディレクトリ名のディレクトリを作成します。
public
OpenFile 指定されたモードでファイルをオープンします。
public
Release (SFBBase から継承) インターフェイスの参照カウントをデクリメントします。
public
Remove ファイル名で指定されたファイルを削除します。
public
Rename ファイル名を元の名前から目的の名前に変更します。
public
RmDir ディレクトリ名で指定されたディレクトリを削除します。
public
SetDescription 拡張ファイル情報の一部であるファイルの説明を設定します。
public
Test 指定されたファイルまたはディレクトリが存在するかどうかをチェックします。
public
UnUse 指定されたファイルを使用するクラスのリストから 呼び出し側アプリケーションの ClassID を削除します。
public
Use 指定されたファイルを使用するクラスのリストに 呼び出し側アプリケーションの ClassID を追加します。

SFBFileMgr::EnumInit
指定したディレクトリ内のファイルやディレクトリを列挙するための初期化を行います。
[ public ]
SFCError EnumInit(
    ConstACharPtr pszDir   
    Bool bDirs = FALSE     
);
[ public ]
SFCError EnumInit(
    ConstSFUAnsiStringRef stDir   
    Bool bDirs = FALSE            
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
FileInfo                    info    = {0};

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイルを列挙するための初期化を行います。
if (fileMgr->EnumInit("new_dir", FALSE) == SUCCESS) {

    // 次の要素を取得します。
    fileMgr->EnumNext(&info);

    // ファイル名をログとして表示します。
    DBGPRINTF("file name : %s", info.szName);
}

参照

BREW API IFILEMGR_EnumInit | SFBFileMgr::EnumNext


SFBFileMgr::EnumNext
ファイルやディレクトリの情報を列挙します。
[ public ]
Bool EnumNext(
    FileInfo * pInfo   
);
[ public ]
FileInfo EnumNext(Void);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
FileInfo                    info    = {0};

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイルを列挙するための初期化を行います。
if (fileMgr->EnumInit("new_dir", FALSE) == SUCCESS) {

    // 次の要素を取得します。
    fileMgr->EnumNext(&info);

    // ファイル名をログとして表示します。
    DBGPRINTF("file name : %s", info.szName);
}

参照

BREW API IFILEMGR_EnumNext | SFBFileMgr::EnumInit | FileInfo


SFBFileMgr::EnumNextEx
ファイルやディレクトリの拡張情報を列挙します。
[ public ]
Bool EnumNextEx(
    AEEFileInfoEx * pInfoEx   
);
[ public ]
AEEFileInfoEx EnumNextEx(Void);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
AEEFileInfoEx               infoEx           = {0};
AChar                       fileName[128]    = {0};
WChar                       description[128] = {0};
AEECLSID                    classId[32]      = {0};


// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイルの列挙を行うための初期化をします。
if (fileMgr->EnumInit("new_dir", FALSE) == SUCCESS) {

    // AEEFileInfoEx 構造体を初期化します。
    infoEx.nStructSize      = sizeof(AEEFileInfoEx);
    infoEx.pszFile          = fileName;
    infoEx.nMaxFile         = 128;
    infoEx.pszDescription   = description;
    infoEx.nDescriptionSize = 128 * sizeof(WChar);
    infoEx.pClasses         = classId;
    infoEx.nClassesSize     = 32 * sizeof(AEECLSID);

    // 次の要素を取得します。
    fileMgr->EnumNextEx(&infoEx);

    // ファイル名をログとして表示します。
    DBGPRINTF("file name : %s", infoEx.pszFile);
}

参照

BREW API IFILEMGR_EnumNextEx | SFBFileMgr::EnumInit | AEEFileInfoEx


SFBFileMgr::GetFileUseInfo
モジュールのファイル使用情報を取得します。
[ public ]
SFCError GetFileUseInfo(
    AEEFileUseInfo * pfu   
);
[ public ]
AEEFileUseInfo GetFileUseInfo(Void);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
AEEFileUseInfo              info    = {0};

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイル情報を取得します。
fileMgr->GetFileUseInfo(&info);

参照

BREW API IFILEMGR_GetFileUseInfo | AEEFileUseInfo


SFBFileMgr::GetFreeSpace
ファイルシステムで現在使用可能な空きバイト数を取得します。
[ public ]
UInt32 GetFreeSpace(
    UInt32Ptr pdwTotal = NULL   
);

参照

BREW API IFILEMGR_GetFreeSpace


SFBFileMgr::GetInfo
ファイル名で指定されたファイルの情報を取得します。
[ public ]
SFCError GetInfo(
    ConstACharPtr pszName   
    FileInfo * pInfo        
);
[ public ]
SFCError GetInfo(
    ConstSFUAnsiStringRef strName   
    FileInfo * pInfo                
);
[ public ]
FileInfo GetInfo(
    ConstSFUAnsiStringRef strName    
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
FileInfo                    info    = {0};

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイル情報を取得します。
fileMgr->GetInfo("sample.txt", &info);

参照

BREW API IFILEMGR_GetInfo | FileInfo | SFBFile::GetInfoEx


SFBFileMgr::GetInfoEx
ファイル名で指定されたファイルの拡張情報を取得します。
[ public ]
SFCError GetInfoEx(
    ConstACharPtr pszName     
    AEEFileInfoEx * pInfoEx   
);
[ public ]
SFCError GetInfoEx(
    ConstSFUAnsiStringRef strName   
    AEEFileInfoEx * pInfoEx         
);
[ public ]
AEEFileInfoEx GetInfoEx(
    ConstSFUAnsiStringRef strName   
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
AEEFileInfoEx               infoEx           = {0};
AChar                       fileName[128]    = {0};
WChar                       description[128] = {0};
AEECLSID                    classId[32]      = {0};

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// AEEFileInfoEx 構造体を初期化します。
infoEx.nStructSize      = sizeof(AEEFileInfoEx);
infoEx.pszFile          = fileName;
infoEx.nMaxFile         = 128;
infoEx.pszDescription   = description;
infoEx.nDescriptionSize = 128 * sizeof(WChar);
infoEx.pClasses         = classId;
infoEx.nClassesSize     = 32 * sizeof(AEECLSID);

// ファイル情報を取得します。
fileMgr->GetInfoEx("sample.txt", &infoEx);

参照

BREW API IFILEMGR_GetInfoEx | AEEFileInfoEx | SFBFile::GetInfoEx


SFBFileMgr::GetLastError
この関数は、アプレットで実行したファイル操作が失敗し、 失敗の理由を取得する必要がある場合に使用します。
[ public ]
SFCError GetLastError(Void);

参照

BREW API IFILEMGR_GetLastError


SFBFileMgr::Instance
IFileMgr インターフェイスのインスタンスを取得します。
[ public, static ]
SFUBrewPtr<SFBFileMgr> Instance(Void);

SFBFileMgr::MkDir
指定されたディレクトリ名のディレクトリを作成します。
[ public ]
SFCError MkDir(
    ConstACharPtr pszDir   
);
[ public ]
SFCError MkDir(
    ConstSFUAnsiStringRef strDir   
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ディレクトリを作成します。
fileMgr->MkDir("new_dir");

参照

BREW API IFILEMGR_MkDir | SFBFileMgr::RmDir


SFBFileMgr::OpenFile
指定されたモードでファイルをオープンします。
[ public ]
SFUBrewPtr<SFBFile> OpenFile(
    ConstACharPtr pszFile   
    AEEOpenFileMode mode    
);
[ public ]
SFUBrewPtr<SFBFile> OpenFile(
    ConstSFUAnsiStringRef strFile   
    AEEOpenFileMode mode            
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
SFUBrewPtr<SFBFile>         file;

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイルを生成します。
file = fileMgr->OpenFile("sample.txt",_OFM_CREATE);

if (file != NULL) {

    // SophiaFramework ではスマートポインタが存在するために
    // ファイルのクローズは自動で行われます。
    // もし、手動でクローズしたい場合は、
    //
    // file.Reset();
    //
    // と記述します。
}

参照

BREW API IFILEMGR_OpenFile | SFBFileMgr::MkDir


SFBFileMgr::Remove
ファイル名で指定されたファイルを削除します。
[ public ]
SFCError Remove(
    ConstACharPtr pszFileName   
);
[ public ]
SFCError Remove(
    ConstSFUAnsiStringRef strFileName   
);

参照

BREW API IFILEMGR_Remove


SFBFileMgr::Rename
ファイル名を元の名前から目的の名前に変更します。
[ public ]
SFCError Rename(
    ConstACharPtr pszSrcFileName   
    ConstACharPtr pszDstFileName   
);
[ public ]
SFCError Rename(
    ConstSFUAnsiStringRef strSrcFileName   
    ConstSFUAnsiStringRef strDstFileName   
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ディレクトリを作成します。
fileMgr->MkDir("new_dir");

// 名前を変更します。
fileMgr->Rename("new_dir","temp_dir");

参照

BREW API IFILEMGR_Rename | SFBFileMgr::EnumNext


SFBFileMgr::RmDir
ディレクトリ名で指定されたディレクトリを削除します。
[ public ]
SFCError RmDir(
    ConstACharPtr pszDir   
);
[ public ]
SFCError RmDir(
    ConstSFUAnsiStringRef strDir   
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ディレクトリを作成します。
fileMgr->MkDir("new_dir");

// ディレクトリを削除します。
fileMgr->RmDir("new_dir");

参照

BREW API IFILEMGR_RmDir | SFBFileMgr::MkDir


SFBFileMgr::SetDescription
拡張ファイル情報の一部であるファイルの説明を設定します。
[ public ]
SFCError SetDescription(
    ConstACharPtr pszName   
    WCharPtr pszDesc        
);
[ public ]
SFCError SetDescription(
    ConstSFUAnsiStringRef strName    
    ConstSFUWideStringPtr pstrDesc   
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;
SFUWideString               description("Sample File");

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// ファイルの説明を設定します。
fileMgr->SetDescription("sample.txt", &description);

参照

BREW API IFILEMGR_SetDescription | SFBFileMgr::EnumInit


SFBFileMgr::Test
指定されたファイルまたはディレクトリが存在するかどうかをチェックします。
[ public ]
SFCError Test(
    ConstACharPtr pszName   
);
[ public ]
SFCError Test(
    ConstSFUAnsiStringRef strName   
);

使用例

SFUBrewPtr<SFBFileMgr>      fileMgr;

// SFBFileMgr インターフェイスを作成します。
fileMgr = SFBFileMgr::Instance();

// 指定したファイルが存在するかを確認します。
if (fileMgr->Test("sample.txt") == SUCCESS ) {
    // 指定したファイルが存在する場合の処理を記載します。
}

参照

BREW API IFILEMGR_Test


SFBFileMgr::UnUse
指定されたファイルを使用するクラスのリストから 呼び出し側アプリケーションの ClassID を削除します。
[ public ]
SFCError UnUse(
    ConstACharPtr pszName   
);
[ public ]
SFCError UnUse(
    ConstSFUAnsiStringRef strName   
);

解説

指定されたファイルは、最後のアプリケーションがファイルが不要になったことを示すか、 SFBFileMgr::Remove が呼び出されると削除されます。

参照

BREW API IFILEMGR_UnUse | SFBFileMgr::Use | SFBFileMgr::GetInfoEx | AEEFileInfoEx


SFBFileMgr::Use
指定されたファイルを使用するクラスのリストに 呼び出し側アプリケーションの ClassID を追加します。
[ public ]
SFCError Use(
    ConstACharPtr pszName   
);
[ public ]
SFCError Use(
    ConstSFUAnsiStringRef strName   
);

解説

指定されたファイルは、 最後のアプリケーションがファイルが不要になったことを示すか、 SFMFileMgr::Remove が呼び出されるまでは削除されません。

参照

BREW API IFILEMGR_Use | SFBFileMgr::UnUse | SFBFileMgr::GetInfoEx | AEEFileInfoEx