读取数字然后用C ++文本文件中的字母

时间:2016-02-22 00:40:51

标签: c++ string file input

我试图用C ++做点什么,而且我在确定如何做到这一点时遇到了一些麻烦。

我有一个文本文件,其中包含我需要解析和处理的信息。该文件的格式是多行,每行包含一个数字,后跟一个字母:

1234 A
5678 B
9101 C

我需要做的是,逐行读取数字并根据它进行计算。然后我需要根据该行上字母的值进行操作。完成两个操作后,我将重复下一行,直到解析了文件中的所有行。

我发现了一些关于如何逐行读取字符串的文章,但我无法引用如何将这些行分成数字和字母。

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:0)

以下示例可能有所帮助:

window.onload = function () {
    var ele = document.getElementById("changeButton");
    ele.onclick = function() {
        if(ele.className === "settingOne") {
            ele.className = "settingTwo";
        } else {
            ele.className = "settingOne";
        }
    };
};

在上面,文件#include <iostream> #include <fstream> #include <string> int main(int argc, char** argv) { std::ifstream fp("input.dat"); char ch; int n; while (fp >> n && fp >> ch) { std::cout << "Here is your number: " << n << std::endl; std::cout << "Here is your char: " << ch << std::endl; } return 0; } 包含您的输入。如果数字和字母由换行符,制表符,空格或任何其他空格分隔,则此示例并不在意。如果您确实需要准备特定格式,可以查看input.datfscanfhttp://www.cplusplus.com/reference/string/string/getline/)。

答案 1 :(得分:0)

using namespace std;

ifstream file("file.txt");
int number;
char character;

while( file >> number >> character ) {
    // read each line as a number followed by a character
    cout << number << " " << character << endl;
    switch( character ) {
        case 'A':

            break;
        case 'B':

            break;
        case 'C':

            break;
    }
}