c++ 如何獲取本地txt讀取文本(不是根據控制檯輸入值的那種)

c語言裏學了,是可以在控制檯的時候去輸入輸出的,但是我們在真正的做程序的時候,是要讀取文件的,本地文件,以下是讀取一個txt文本。

在C++標準類裏,是有一個頭文件 #include <fostream>,現在的標準文件是沒有了.h後綴了!注意!

因爲我們寫的是用標準的,所以排除了平臺自帶的解析,譬如cocos2dx裏面的CCFileUtils::sharedFileUtils()->getFileData(),等等。

首先我們要用到的是:ifstream類這是讀取類,ofstream類是寫入的(我是這麼理解的,具體看代碼)


ifstream* ifStr = new ifstream;
ofstream* ofStr = new ofstream;
ifStr->open("ifStr.txt");
//打開文件
ofStr->open("ofStr.txt");//打開文件,這裏要是沒有該文件,程序會創建這個文件

if (ifStr->is_open()){//判斷是否打開了
std::string data1;
int size = 0;
char txtStr[1024]; 
while(!ifStr->eof()){//判斷是否是文件的結尾
ifStr->read(txtStr, 1024);//這裏的參數是:讀1024個字節到txtStr中
//data1.append(txtStr);//在string中添加這個txtStr(這裏是爲了加到string類裏以後操作)
//ofStr->write(txtStr, ifStr->gcount());//讀txtStr到ofStr,大小是ifStr剛剛讀的大小,就是剛剛的1024(這裏是直接copy到新的txt文件中)
}
unsigned char* data = (unsigned char*)data1.c_str();//這樣我就獲取出文件裏的東西,然後操作這個data指針
}
ifStr->close();
ofStr->close();

//記得要關閉,這個在java中也是一樣的,都是要關閉的

發佈了57 篇原創文章 · 獲贊 9 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章