读取txt文件中的一些数据并将其传递给字符串数组

时间:2019-02-18 05:13:52

标签: c++

我在Windows 7中使用VS2010编写C ++ mfc程序。我想逐行读取txt文件并将其传递给字符串数组。

我已经尝试过testByLine函数,但是它说名称“ fstream”是不确定的。此外,在Windows 7中,“ ios :: in”似乎不正确,但我不知道如何纠正它。

#include "stdafx.h"
#include <fstream>

std::string Value_2[5];

void testByLine()
{
    char buffer[256];
    fstream outFile;
    outFile.open("result.txt", ios::in);
    int i = 0;
    while (!outFile.eof()) {

        outFile.getline(buffer, 128, '\n');
        Value_2[i] = buffer;
        i += 1;
    }
    outFile.close();
}

我希望txt中的每一行都传递给字符串数组Value_2的每个元素。

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作。

#include <fstream> 
#include <iostream>
#include <string>

int main(){

    std::string read;
    std::string arr[5];
    std::ifstream outFile;
    outFile.open("test.txt");

    int count = 0;

    //reading line by line 
    while(getline(outFile, read)){

        //add to arr
        arr[count] = read;
        count++;
    }

    outFile.close();

    //c++ 11
    // for(std::string str : arr) std::cout << str << "\n";
    for(int i = 0; i < 5; i++){
        std::cout << arr[i] << "\n";
    }

    return 0;
}