SDXFrameWork  0.09
SDXFrameWork
 All Classes Namespaces Functions Variables Enumerations Enumerator Pages
Public Member Functions | List of all members
SDX::File Class Reference

入出力可能なテキストかバイナリファイルを表すクラス. More...

#include <File.h>

Public Member Functions

 File (const char *ファイル名, FileMode 読み書きモード, bool バイナリファイル=false, SaveMode Androidの保存先=SaveMode::Asset)
 ファイル名とモードを指定して、ファイルを開く. More...
 
bool Open (const char *ファイル名, FileMode 読み書きモード, bool バイナリファイル=false, SaveMode Androidの保存先=SaveMode::Asset)
 ファイルを開く. More...
 
void Close ()
 ファイルを閉じる. More...
 
FileMode GetFileMode ()
 ファイルモードを取得. More...
 
const char * GetFileName ()
 ファイル名を取得. More...
 
template<class T >
bool Read (T &読み込み先変数)
 データを読み込む. More...
 
bool Read (std::string &読み込み先変数)
 
template<class T >
bool Read (T *読み込み先配列, int 要素数)
 
template<class TSaveType , class TOutput >
bool Read (TOutput *読み込み先配列, int 要素数, int 分母)
 型変換をしつつ読み込む. More...
 
template<class TSaveType , class TOutput >
bool Read (TOutput &読み込み先変数)
 
template<class T >
bool Write (T &書込み元変数)
 データを書き込む. More...
 
bool Write (std::string &書込み元変数)
 
template<class TSaveType , class TInput >
bool Write (TInput *書き込み元配列, int 要素数)
 型変換をして書き込む. More...
 
template<class T >
bool ReadWrite (T &読み書き変数)
 FileModeがReadの場合Read、WriteかAddの場合Writeを行う. More...
 
std::vector< std::string > GetLineS ()
 ファイルを改行区切りで一括して読み込む. More...
 
std::vector< std::vector
< std::string > > 
GetCsvS ()
 カンマ区切りのCSVファイルを一括読込. More...
 
bool CheckEOF ()
 ファイルの終端判定. More...
 

Detailed Description

入出力可能なテキストかバイナリファイルを表すクラス.

//©SDXFramework http://sourceforge.jp/projects/dxframework/
//🍣ファイルに書き込みと読み込みを行う
bool SampleFile()
{
using namespace SDX;
File fileA("test.txt", FileMode::Write, true );
int a = 100;
char c = 123;
std::string str = "こんにちは";
fileA.Write(a);
fileA.Write(c);
fileA.Write(str);
fileA.Close();
File fileB("test.txt", FileMode::Read, true );
int b;
std::string str2;
fileB.Read(b);
fileB.Read(c);
fileB.Read(str2);
fileA.Close();
System::Initialise("sample", 600, 400);
while (System::Update())
{
Drawing::String({ 10, 10 }, Color::White, { "書き込んだ数字は:", b, "\n書き込んだ文字は:", str2 });
if (Input::key.Return.on) break;//Enterで終了
}
return true;
}

Constructor & Destructor Documentation

SDX::File::File ( const char *  ファイル名,
FileMode  読み書きモード,
bool  バイナリファイル = false,
SaveMode  Androidの保存先 = SaveMode::Asset 
)

ファイル名とモードを指定して、ファイルを開く.

Member Function Documentation

bool SDX::File::Open ( const char *  ファイル名,
FileMode  読み書きモード,
bool  バイナリファイル = false,
SaveMode  Androidの保存先 = SaveMode::Asset 
)

ファイルを開く.

void SDX::File::Close ( )

ファイルを閉じる.

FileMode SDX::File::GetFileMode ( )

ファイルモードを取得.

const char* SDX::File::GetFileName ( )

ファイル名を取得.

template<class T >
bool SDX::File::Read ( T &  読み込み先変数)

データを読み込む.

FileMode::Readの場合成功。
読込先変数にデータを読み込む。

template<class TSaveType , class TOutput >
bool SDX::File::Read ( TOutput *  読み込み先配列,
int  要素数,
int  分母 
)

型変換をしつつ読み込む.

template<class T >
bool SDX::File::Write ( T &  書込み元変数)

データを書き込む.

FileModeがWriteかAddの場合成功。
書込元変数をファイルに書き込む。

template<class TSaveType , class TInput >
bool SDX::File::Write ( TInput *  書き込み元配列,
int  要素数 
)

型変換をして書き込む.

double型をfloatに変換して保存する時用

template<class T >
bool SDX::File::ReadWrite ( T &  読み書き変数)

FileModeがReadの場合Read、WriteかAddの場合Writeを行う.

std::vector<std::string> SDX::File::GetLineS ( )

ファイルを改行区切りで一括して読み込む.

std::vector<std::vector<std::string> > SDX::File::GetCsvS ( )

カンマ区切りのCSVファイルを一括読込.

bool SDX::File::CheckEOF ( )

ファイルの終端判定.