2017-12-01 5 views
-1

txtファイル入力txtファイルから2つのC++配列にデータを読み込む方法は?

1 2 3 4 5 col A 2 3 4 5 6 col B 2 3 4 5 6 col C 2 3 4 5 6 col D 2 3 4 5 6 col E

私はすでに2次元配列に数値を格納する方法を知っています。しかし、問題はまた、単語(空間を含む)を1次元の配列に格納する必要があります。誰かが私にこのことを教えることができますか?私はC++を初めて使っています。どんな助けもありがとう。

+0

テキストのイメージではなく、テキストをポストします。これまでのコードを投稿してください。 –

+0

これで、2D配列を読み込むことができます。 1Dアレイにどのように読み込むのが難しいですか?どんな*特定の問題? –

+0

@BoPersson私はコードを数値列をスキップし、 "col A"、 "col B"などを1D配列に読み込む方法を知る必要があります。 –

答えて

0

これは、ファイルを1行ずつ読み込み、スペースで分割する基本的な読み込みファイルループを必要とします。数字の場合は2次元配列に、単語は1次元配列にプッシュします。

fstream file; 
file.open("somefile.txt"); 
vector<vector<double>> nums; 
vector<string> words; 
string line; 
while(getline(file, line)) 
{ 
    vector<double> tempNums; 
    istringstream liney(line); int i = 0; string cell; 
    while(getline(liney, cell, ' ')) 
    { 
     if(i < 5) tempNums.push_back(stoi(cell.c_str())); 
     else words.push_back(" " + cell); 
     i++; 
    } 
    nums.push_back(tempNums)   
} 

これは役に立ちます。 (これは上記の書式に基づいています)

関連する問題