怎樣用c++從檔案中讀入string型別的資料?
1樓:網友
不用string不行嗎?
1.可以搞成固定長度的字串, 這樣方便讀取,缺點浪費空間2.弄個結構/類。
struct
寫乙個長度,再謝字串內容,這樣讀取時,每次先讀出長度,再讀取該長度的字串。
優點:省空間,缺點一旦那邊檔案出錯了,就全亂了3.索引表。
檔案中僅存字串, 外面單獨搞個陣列記錄每個字串的長度。。。
c++怎麼從輸入流裡面提取目標型別的字元
2樓:西門飛磚
計算機內部儲存不管是數字還是字母都是用的整數。
就可以通過每個元素相加的和,比如輸入乙個三位數,那麼他每個元素的和肯定是<=27的,就可以斷定它為乙個數字的字串。
然後其他符號在計算機內部儲存的數字**比124(z)大。所以3個字元的string每個元素的相加<=372;
就這樣判斷。
int sum = 0;
string string 1;
cin>>string1;
char* p = string1;
while(p)
sum+=*p++;
if(sum<=27) cout《為數字;
else if(sum>27&& sum<=372) cout《為字母;
else if(sum>372) cout《為其他符號;
如果要知道輸入的是幾個字元的字串,就用指標計算一下,然後得到相應的每個元素的和作為判斷條件。
c++如何從文字內讀取格式為"string=int"的資料,儲存在類裡,可直接以string來呼叫string和關聯int的值
3樓:網友
首先你要搞清楚變數名只是個名字,和字串沒有任何關係。變數名在機器中沒有任何表示 只有變數儲存乙個記憶體位址,你不能指望機器能識別你定義的變數名。其次列舉的用法你沒有弄明白,列舉的元素不等於類物件。
你不能用列舉元素來進行類操作。
合理的方式是定義乙個類物件,根據類物件進行操作。給你個合理的設計建議:
類物件可以讀取文字中所有的字串和常量,用於查詢:
listmyclass::getallnames() const;
listmyclass::getallvalues() const;
其次例項物件根據值或者字串進行查詢:
string myclass::getname(int _value) const;
int myclass::getvalue(string _name) const;
4樓:周生
char strbuf = fgetline(..
int ret = strncmp("string1", strbuf, strlen("string1"));
只是寫了下思路,你詳細一下就可以實現。
5樓:網友
樓主的意思含糊,看大概是不是這樣:
struct value
#define defv(name) value name =namespace myclass
然後讀取配置檔案中的值,偽**: = readintfromtxt(;
6樓:網友
你去看看 c++ 裡面的 map 吧,看看能用不。
如何讀取list
7樓:網友
listlsit=new list();這一句應該在for (int i = 0; i < 50;i++ 前納緩擾面吧。
這洞旦裡是新增值哪飢到list裡。
獲取的話可以用迴圈或者用索引器。
c++讀入乙個文字檔案,將資料讀入到乙個字串中
8樓:冰空花束的奇蹟
根據在dev c++ 中的測試,程式應該沒有問題。
你可以檢查一下。如果檔案末有多餘空行的話,輸出可能有問題。
這是因為你使用了sizeof(file)。還有,sizeof(file)確實是檔案的大小,這個沒有問題。
9樓:網友
sizeof(file)是ifstream的物件的大小,並非檔案的大小。
這裡應該用檔案大小。
c++如何用檔案流讀取字串到string,直到遇到逗號
10樓:夷樹枝邸碧
如果沒有空串,則可以先將string中的逗號替換成空格,然後用stringstream類來讀取。
請問一下 怎麼用c語言實現讀取乙個txt檔案裡的資料 要按行讀出來
11樓:網友
開啟檔案 fopen("需要開啟的路徑")然後使用fgets函式讀取行。
#include
#include
#include
#define max_line 1024int main()
while(fgets(buf,max_line,fp) != null)
return 0;}
12樓:
/*假設你的資料檔案是d:\
用迴圈把數字讀到陣列a裡面順便顯示出來 */#include
int main()
while(!feof(fp))
fclose(fp);
return 0;}
13樓:網友
簡單的辦法:
#include
.//這裡的你自己的程式,省去。
file *fp = fopen("你的檔案的檔名", "r");
int n;
while (!feof(fp))
fclose(fp); //讀完就退出迴圈。
14樓:勇敢的心
可以用c++的流來做,包含fstream標頭檔案,定義乙個ifstream輸入流,用getline函式讀一行資料,當然讀了之後可以把。
#include
#include
using namespace std;
void main()
ifstream in("####");//傳入檔名string str;//用於放一行資料。
getline(in,str);//重點,很簡單吧cout<>value;//這樣程式會忽略空白符讀入乙個double型的資料。
15樓:上善若水
利用輸入輸出流開啟檔案,然後按行讀取放到string型別,然後再重定向到 double型別中,程式如下已經過除錯:
#include
#include
#include
#include
using namespace std;
void main()
新割的蜂蜜如何從蜂巢中取出如何從蜂巢中取出蜂蜜?
使用搖蜜機。是專門用來搖蜜取蜜的裝置,只需要把割掉封蓋的巢脾,讓入搖蜜機,然後轉動把手,讓巢脾高速旋轉,通過離心力的作用讓液體的蜂蜜從蜂巢中甩出,這就是搖蜜的過程。蜂蜜的品質優劣關鍵在於是不是成熟蜜,傳統的蜂場根本沒有成熟蜜,所以他們在搖蜜的時候也不會用刀割封蓋,因為根本就沒有封蓋,當然也無需割,而...
如何從生辰中受益,讓自己的命運變得更好
文 阿育老師 生辰八字天註定,大致決定了一個人一生的運勢,但我們可以順勢而為,讓自己的命運變得更好!1 事業方面,儘量從事與喜用神相搭配的行業。比如自己八字的喜用神是木,那麼最好不要從事與金屬有關的行業,因為五行中金克木。如果你不懂,或者明知卻不相信,非要從事與金屬有關的行業,到時費神費力卻事業毫無...
大家是如何讓自己從憤怒中趨於平靜的
喝一口水,先讓自己冷靜一下,然後就是深呼吸,心裡默唸著不能生氣不能生氣,生氣容易變醜!然後一會就平靜了。給你說個搞笑的方法吧,憤怒時就對自己說 世界如此美妙,我卻如此煩躁,不好,不好我不能這麼憤怒就可以了。聽 吧,要不就舒緩 這樣平靜不下來的話 就聽搖滾 以毒攻毒,至少這樣會轉移你的注意力。還有一個...