導航:首頁 > 文件教程 > cifstream讀取文件

cifstream讀取文件

發布時間:2023-05-13 04:28:14

『壹』 c++ 如何用 ifstream 讀取txt文件的全部內容

#include <fstream>
ifstream fin("a.txt");
以簡森仿後在程序中春洞用 fin>> 流入變數。
當然a.txt要和exe在同一文件夾。
否則雙引號中要加上路徑攔纖,如c:\a.txt

若不懂,請參考c++文件流。

『貳』 c++ifstream讀文件內容出現錯誤

char *name;
char *profession;
char *title;
這三處,都有錯,。問題就是沒有分內存。
兩種方法解決:
方法一:
如果你知道上面三個參數最大需嫌雀配要多少位元組,。可以用
這樣的方法來分內存。用name為例:name=(char *) malloc(大小);
用完之後,在最後面用 free(name);釋放內存。
方法二:
換芹指個歲叢定義的方法
char name[大小];
char profession[大小];
char title[大小];

『叄』 如何用ifstream讀取一個100行每行6個數據的文件,存儲在一個鏈表中

//---------------------------------------------------------------------------
#include
<fstream>
#include
<iostream>罩則宏
using
namespace
std;
typedef
struct
node{
int
data;
struct
node
*next;
}
node;
node
*creat(ifstream
&ifp)
{
node
*h=NULL,*p=NULL,*q=NULL;
int
data;
while
(ifp>>物冊data)
{
p=new
node;
p->data=data;
p->next=NULL;
if
(!h)
h=p;
else
q->next=p;
q=p;
}
return
h;
}
void
prt(node
*h)
{
if
(h)
{
cout<<h->盯正data<<endl;
prt(h->next);
}
}
int
main(void)
{
ifstream
fp("d:\\data.txt",ifstream::in);
node
*hst=creat(fp);
fp.close();
prt(hst);
return
0;
}
//---------------------------------------------------------------------------

『肆』 ifstream流怎麼讀取文件里所有的信息急!!

操作符>>在流肢腔吵文件ifstream中,是析取器的圓碰作用,即從標准輸入流中讀取一個指定類型數據,對於字元串A來說,當遇到回車、空格就會自動停止,因為這被默認為一個字元串的結束。
因此,你如果需要讀取txt中的全部內容,應該使用in.get(char)函數,循環讀取到文件歷侍末尾。
或者,用CFile吧,這個在MFC下比ifstream更好用一些,可以一個Read函數全部讀取。

『伍』 c++ 如何用ifstream讀取文件

分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:

ifstream data_read("test.txt");

if (!data_read)

{

cerr << "讀取時打開文件出錯嘩迅物!" << endl;

}

else

{

char ch[100],name,memo[100];

int age[100];

int i=1;

while (!data_read.eof())

{

data_read >> ch;

sscanf(ch,"%s %d %s",&name,&age[i],&memo);

cout << "name=" << name << endl;

cout << "age=" <亂液< age[i] << endl;

cout << "memo=" << memo << endl;

cout << i<< "ch=" << ch << endl ;

i++;

}

}

data_read.close();

我的test.txt文件內容是這樣的:

姓名:hehe年昌凳齡:12備註:123

姓名:haihai年齡:18備註:12ff

姓名:aa年齡:22備註:ff11

我想把這些內容能夠按照姓名,年齡,備注這樣的不同,放在不同的數組里。。

現在我寫的那段程序是出錯了。。我也不知道怎麼改,請高手幫忙,謝謝

我是菜鳥

解析:

不能用sscanf(ch,"%s %d %s",&name,&age[i],&memo);

來拆分你的記錄,得用strstr(ch, "姓名:")這樣的方法來定位,然後取值,例如:

char * p1 = strstr(ch, "姓名:");

char * p11 = p1 + strlen("姓名:");

char * p2 = strstr(ch, "年齡:");

char * p21 = p2 + strlen("年齡:");

char * p3 = strstr(ch, "備註:");

char * memo = p3 + strlen("備註:");

char name[p2-p11+1];

strncpy(name, p11, p2-p11);

char age[p3-p21+1];

strncpy(age, p21, p3-p21);

『陸』 使用ifstream的get()函數讀取文件中的字元發生錯誤

真正原因是彎陵:在eof()這里。當文件指針到達文件末尾時,執行eof不會立刻返回true,要等到下一次讀取時才會返回。即再執行一次get()之後,eof才會返回true。此時,ifstream流的狀態標識為失敗,get沒有讀到東西,所以c保存了上一次讀取的數據,因此出現最後一個字元被顯示兩次的現象。

解決:修改代戚空碼,使用eof()與fail()結合判斷文件結尾。
ifstream fin("input.txt");
while(!fin.eof()){
char c;
fin.get(c);
if(fin.fail()) break;//假如是埋仔戚文件尾部,在c輸出之前就跳出

cout<<c<<endl;
}

『柒』 在c++里用ifstream類讀取文件錯誤

你使用了沒有定義的標示符,檢查一下所有的函數、變數是否都在頭文件中定義了,檢查一下cpp文件中是否包含了頭文件,檢查一下函數名稱的大小寫問題,在c++中,函數a和函數a是兩個不同的函數,仔細的檢查一下。

『捌』 高手們,C++MFC如何使用ifstream流隔行讀取txt文件

#include<iostream>碧正
#include<好慧塌fstream>
usingnamespacestd;
intmain()
{
strings;
ifstreaminfile("txt.txt");
if(!infile)return1;
intn=0;
while(!infile.eof())
{
stringtimes,date;
infile>>times>>友圓date;
n++;
if(n%2==0)
{
cout<<times<<""<<date<<endl;
}
}
return0;
}

『玖』 ifstream讀取問題

// while(fi.get(ch)) //問題在這里,fi.get(ch)把每一行的第一個字元讀掉了(對於漢字余碼蠢來說,就是把豎陪半個字丟了,那後面當然讀取有問題模禪了,換成這樣判斷:
while(fi.peek()!=EOF)
{
getline(fi,a,'\n') ;
cout<<a<<endl;
}

閱讀全文

與cifstream讀取文件相關的資料

熱點內容
js關閉頁面前提示 瀏覽:147
彩視製作教程 瀏覽:766
聖墟在哪個App看免費 瀏覽:395
網路哪些不能玩 瀏覽:868
probe315使用教程 瀏覽:646
數字電位器程序 瀏覽:198
c代碼整理 瀏覽:104
網路營銷具有什麼優勢 瀏覽:378
右下角網路連接不顯示寬頻連接 瀏覽:940
ps修改tif文件 瀏覽:580
預防醫學如何轉行做大數據 瀏覽:234
pdf文件變藍 瀏覽:309
怎麼在pdf文件上面用k寶簽名 瀏覽:213
如何知道表格里數據後面有空格 瀏覽:720
gee引擎更新系統找不到指定文件 瀏覽:802
貝殼網的數據刪除了如何找回 瀏覽:509
華為榮耀6x怎麼切換網路 瀏覽:418
手機里的pdf文件在哪放 瀏覽:889
java版貪吃蛇畢業論文 瀏覽:989
微信公共號郵箱 瀏覽:415

友情鏈接