2016-03-05 80 views
-4

可有人請告訴我如何創建從文件TXT字符串數據類型 讀取例如數組功能:在內部功能的以下文件C++數組字符串函數

閱讀:

學院。 TXT

states.txt

的學院/大學添加到字符串矢量。

將狀態添加到並行數組字符串。

從您的主要功能調用讀取功能。

非常感謝你:d

+2

你問別人做你的功課。有很多關於從文件讀取的主題[例如這一個](http://stackoverflow.com/questions/7868936/read-file-line-by-line) – ppsz

回答

-1

試試下面的代碼:

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

void func() 
{ 
    std::ifstream fin; 
    fin.open("colleges.txt", std::ifstream::in); 
    std::vector<std::string> vec; 
    std::string line; 
    while(getline(fin, line)) 
    { 
     vec.push_back(line); 
    } 
    fin.close(); 

    int len = vec.size(); 
    std::string *arr = new std::string[len]; 
    int index = 0; 
    fin.open("states.txt", std::ifstream::in); 
    while(getline(fin, line)) 
    { 
     arr[index++] = line; 
    } 
    fin.close(); 

    for(auto e:vec) std::cout<<e<<" "; 
    std::cout<<"\n"; 

    for(int i = 0; i < len; ++i) 
     std::cout<<arr[i]<<" "; 
    std::cout<<"\n"; 

    delete [] arr; 
} 

int main() 
{ 
    func(); 
    return 0; 
} 
-1

使用載體,卡爾!

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

using namespace std; 

struct TwoVectors { 
    vector<string> first ; 
    vector<string> second; 
}; 

TwoVectors getSomeData() { 
    TwoVectors ret; 

    auto collegesReader = ifstream("colleges.txt"); 
    auto statesReader = ifstream("states.txt"); 
    string temp; 

    while (getline(collegesReader, temp)) 
     ret.first.push_back(temp); 
    while (getline(statesReader, temp)) 
     ret.second.push_back(temp); 
    collegesReader.close(); 
    statesReader.close(); 
    return ret; 
} 



int main() { 
    auto someData = getSomeData(); 
    for (auto something : someData.first) 
     cout << something << endl; 
    for (auto something : someData.second) 
     cout << something << endl; 

    return 0; 
}