簡體   English   中英

將文本文件讀入C ++

[英]Reading text file into C++

我正在編寫一個程序,該程序可以將輸入直接從文本文件讀取到C ++文件中。 但是,文件的內容具有不同的格式,例如時間。 輸入文件如下所示:

Time(1) Price(1)
8:56:18 1250.00
9:00:25 1250.25
9:21:36 1250.50
9:23:32 1249.75

Time(2)
8:55:28
9:02:14
9:20:23
9:21:37
Price(2)
1680.50
1681.00
1680.50
1681.50

我讀取文件的程序如下:

int main()
{
    string file;
    cout << "Enter a file name to read input: ";
    cin >> file;

    ifstream file_name(file.c_str());

    while(!file_name.eof())
    {
        double input;
        file_name >> input;
        cout << input << endl;
    }
}

但是,當我執行程序時,我陷入了無限循環,而我看到的只是在屏幕上寫的0。 這是由於時間格式引起的嗎?

file_name >> input的默認行為是安全類型,因此對於諸如Time(1)8:56:18類的輸入,file_name字節偏移指針永遠不會遞增。 您可以使用string input; 而不是double input; 檢索值,然后您可以使用以下標准c庫檢查它們的類型。

#include <cstdlib>
.
.
.
atof()
atoi()
.

是文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM