1樓:滄海雄風
#include
#include
using namespace std;
int main()
2樓:匿名使用者
這只是一個c++標準上的"遺漏?"
ofstream 並不接受std::string作為它的引數, 它只接受一個c式的字串作為檔名.
稍微改下就可以了
ofstream outfile(dat_name.c_str()); // c_str成員函式把一個string轉換為c式字串
c++如何讀取dat檔案 並將內容寫入記憶體中
3樓:洋依然陰義
1.對於程式來說,不管字尾名如何,檔案分為兩種型別:文字檔案和二進位制檔案。
c語言裡有一系列檔案操作函式。區分文字和二進位制檔案,需要在開啟檔案時設定不同的控制符mode的變數即可。
2.fopen的函式原型:file
*fopen(const
char
*path,const
char
*mode);
fopen函式的第一個引數是檔案路徑,第二個引數是開啟方式,有以下幾種方式:
r以只讀方式開啟檔案,該檔案必須存在。
r+以可讀寫方式開啟檔案,該檔案必須存在。
rb+讀寫開啟一個二進位制檔案,允許讀資料。
rw+讀寫開啟一個文字檔案,允許讀和寫。
w開啟只寫檔案,若檔案存在則檔案長度清為0,即該檔案內容會消失。若檔案不存在則建立該檔案。
w+開啟可讀寫檔案,若檔案存在則檔案長度清為零,即該檔案內容會消失。若檔案不存在則建立該檔案。
a以附加的方式開啟只寫檔案。若檔案不存在,則會建立該檔案,如果檔案存在,寫入的資料會被加到檔案尾,即檔案原先的內容會被保留。(eof符保留)
a+以附加方式開啟可讀寫的檔案。若檔案不存在,則會建立該檔案,如果檔案存在,寫入的資料會被加到檔案尾後,即檔案原先的內容會被保留。
(原來的eof符不保留)
wb只寫開啟或新建一個二進位制檔案;只允許寫資料。
wb+讀寫開啟或建立一個二進位制檔案,允許讀和寫。
wt+讀寫開啟或著建立一個文字檔案;允許讀寫。
at+讀寫開啟一個文字檔案,允許讀或在文字末追加資料。
ab+讀寫開啟一個二進位制檔案,允許讀或在檔案末追加資料。
上述的形態字串都可以再加一個b字元,如rb、w+b或ab+等組合,加入b
字元用來告訴函式庫開啟的檔案為二進位制檔案,而非純文字檔案。
c++如何讀取dat檔案 並將內容寫入記憶體中
4樓:匿名使用者
1.對於程式來說,不管字尾名如何,檔案分為兩種型別:文字檔案和二進位制檔案。
c語言裡有一系列檔案操作函式。區分文字和二進位制檔案,需要在開啟檔案時設定不同的控制符mode的變數即可。
2.fopen的函式原型:file * fopen(const char * path,const char * mode);
fopen函式的第一個引數是檔案路徑,第二個引數是開啟方式,有以下幾種方式:
r 以只讀方式開啟檔案,該檔案必須存在。
r+ 以可讀寫方式開啟檔案,該檔案必須存在。
rb+ 讀寫開啟一個二進位制檔案,允許讀資料。
rw+ 讀寫開啟一個文字檔案,允許讀和寫。
w 開啟只寫檔案,若檔案存在則檔案長度清為0,即該檔案內容會消失。若檔案不存在則建立該檔案。
w+ 開啟可讀寫檔案,若檔案存在則檔案長度清為零,即該檔案內容會消失。若檔案不存在則建立該檔案。
a 以附加的方式開啟只寫檔案。若檔案不存在,則會建立該檔案,如果檔案存在,寫入的資料會被加到檔案尾,即檔案原先的內容會被保留。(eof符保留)
a+ 以附加方式開啟可讀寫的檔案。若檔案不存在,則會建立該檔案,如果檔案存在,寫入的資料會被加到檔案尾後,即檔案原先的內容會被保留。 (原來的eof符不保留)
wb 只寫開啟或新建一個二進位制檔案;只允許寫資料。
wb+ 讀寫開啟或建立一個二進位制檔案,允許讀和寫。
wt+ 讀寫開啟或著建立一個文字檔案;允許讀寫。
at+ 讀寫開啟一個文字檔案,允許讀或在文字末追加資料。
ab+ 讀寫開啟一個二進位制檔案,允許讀或在檔案末追加資料。
上述的形態字串都可以再加一個b字元,如rb、w+b或ab+等組合,加入b 字元用來告訴函式庫開啟的檔案為二進位制檔案,而非純文字檔案。
5樓:匿名使用者
int read_data(file *fin,int *a,int len)
printf("read %d from unsort file!\n",i);
return i;}
6樓:匿名使用者
完成這個工作不算難,但問題是結構的具體宣告難以猜測,請提供!
怎樣用c++從dat檔案中讀入資料?
7樓:
在結構持久序列化裡面是不能出現char *name,這樣的指標性變數的,因為指標所指向的是記憶體而不是實際的資料,這些記憶體在釋放後將會被其它資料填充或被清除,因此必須使用:
char name[25];
然後填充實際資料,這樣儲存的才是實際的資料
8樓:匿名使用者
float x[165];
float y[165];
file *f;
f = fopen(「jiedian.data","r"); //「jiedian.data」改為完整路徑
char c1[10],c2[10];
if(!feof(f))
fclose(f);
}有問題再說!
如何用c++把計算得到的資料讀取到檔案(.dat)中?應該怎樣寫?
9樓:_鈊_煩_薏亂
首先包含標頭檔案:#include
using namespace std;//名稱空間。
這是我在一個小遊戲中的運用,希望你能看懂關鍵的部分即可。
int maxscore = 0; //記錄最高的分
bool newscore = false; //記錄是否出現更新分數的情況,以備後用
ifstream in("maxscore.dat"); //查詢並開啟maxscore.dat檔案
if(!in) //如果不存在則新建一個
if(score>maxscore) //判斷當前分數是否高於歷史最高分
ofstream out("result.txt"); //使用當前文字文件輸出遊戲資料
if(!out)
messagebox(hwnd,_t("檔案開啟失敗,成績儲存失敗"),_t("警告"),0);
out<<"你正確按鍵次數是"< out<<"你的總按鍵次數是"< out<<"最高速度你挺到了"< out<<"你的得分是:"<< score<<"\n"; //開啟了檔案不要忘了關閉哦。 怎麼樣用c、c++讀取別人寫的dat檔案
5 10樓: c語言的檔案操作是用指標來完成的,你首先需要一個檔案指標 file* fp; 然後呼叫一批操作檔案的函式來讀寫檔案。 fopen() 開啟檔案 fread() 讀檔案 fseek()在檔案中前進後退 fclose()關閉檔案 c++語言的檔案操作是物件導向的方式的,你首先要有一個檔案物件,檔案物件初始化的時候傳入檔名,就構造出了讀寫檔案的物件,然後操作這些物件來完成讀寫。 ifstream file1("c:\\pdos.def");//以輸入方式開啟檔案,file1是一個讀檔案物件。 ofstream file2("c:\\x.123");//以輸出方式開啟檔案 ,file2是一個寫檔案物件。 例如關閉檔案就呼叫 file1.close(); 讀入檔案可以用get成員函式 file2.get(str1, 1024, '\n'); //從檔案中讀取字元到字串str1,當遇到回車或讀取了1024個字元時終止。 檢測是否到達檔案結尾用eof函式 if(file2.eof()) printf("已經到達檔案尾!"); c++操作檔案的前進後退的函式是 seekg()和 seekp(),例如 file1.seekg(128,ios::end);//把檔案的讀指標從當前位置向後移128個位元組 file2.seekp(1024,ios::beg);//把檔案的寫指標從檔案開頭向後移1024個位元組 還有最後一點,就是不管是什麼語言,當你讀一個檔案的時候,你需要弄清楚檔案的格式,例如檔案中的資料是弄哪種分隔符的,是tab還是回車還是逗號分隔,針對具體的檔案格式編寫自己的讀寫函式,c++提供的標準函式並不能直接幫你完成各種格式的讀取。 11樓:狂飆的蝸牛 找到他寫的dat檔案,點滑鼠右鍵,選擇開啟方式,瀏覽找你電腦裡安裝的程式設計軟體,左鍵點一下程式設計軟體即可!望採納! 12樓:匿名使用者 如果dat檔案是文字檔案,就與讀取txt檔案一樣直接,請參考其他人的回答。 如果dat檔案是二進位制檔案,那就必須知道寫入格式,即是他是如何寫入的,比如說他是先寫入一個int再寫入兩個char再寫入三個double,你讀取也要按照那個順序,否則讀出來的資料與他寫入的資料意義不一致 想要判斷一個檔案是文字檔案還是二進位制檔案,可以用記事本開啟它,如果看到的內容無亂碼就是文字檔案,如果看到的是一大串亂碼則是二進位制檔案。 13樓:匿名使用者 file fp =fopen(檔名, "rb+"); if fp == null .... fread(.... fseek(... fclose(fp); 就可以了 for i 1 300 g load strcat g num2str i dat len i length g end上面程式生成的是一個cell型別的變數g,含有300列資料,分別從300個檔案中讀取出來的。可以不去在意有多少行。如果達到要求的話,上面的 就足夠。最終的結果就是g。cell的操作... 1 開啟visual studio,檔案 新建 專案 2 選擇visual c 選擇空專案,填寫名稱 確定 3 新增.cpp檔案,原始檔 新增 新建項4 visual c c 檔案 填寫檔名稱 新增 5 寫入 即可 建立c 工程 新增c 檔案 你應該已經寫好程式了吧 然後按f5或者除錯 啟動除錯 就... 函式名 mkdir 功 能 建立一個目錄 資料夾 用 法 int mkdir char pathname 程式例 在win tc和dev c 下執行通過 include include include int main void c語言可以通過fopen函式建立一個新檔案。細節如下 使用fopen需...如何用matlab批量處理dat檔案
visualstudio中如何執行c檔案
如何用c語言建立新檔案,如何用C語言建立一個新檔案