0

データが列として保存されているテキスト ファイルがあります。各列を配列に抽出するにはどうすればよいですか?

例: abcd

10 11 12 13

 14 15 16 17

a = {10,14}、b = {11,15} c = {12,16} d = {13,17} の 4 つの配列が必要です。

以下は、これまでにそれらを単一の配列に追加するために行ったことです。

CArray <double,double> *data = new CArray <double,double>();

CString strLine;

TRY

{ 
  CStdioFile file(m_fileName, CFile::modeRead); 

  while(file.ReadString(strLine)) {
      CArray <double,double> arrayValues;
      splitString(strLine,arrayValues);

      for (int i=0; i< arrayValues.GetSize()-1;i++){
        //  Temp_data[i] = arrayValues.ElementAt(i);
          data->Add(arrayValues.ElementAt(i));
      }
  }
} 
CATCH_ALL(e) 
{ 
  e->ReportError(); // shows what's going wrong 
} 
END_CATCH_ALL 


void splitString(CString S, CArray<double,double>& arrayValues){

CString sep = _T(" ");
int start = 0;
CString aux = S.Tokenize(sep, start);
arrayValues.Add(_tstof(aux));
while(start != -1){
      aux = S.Tokenize(sep, start);
      arrayValues.Add(_tstof(aux));
    
}

}

ありがとう。

4

2 に答える 2

1

あなたは何も試していないので、私はあなたにいくつかの提案をします.

最初に行を astringに分割してから、すべての値を配列に格納します。したがって、最後に配列の合計行が表示されます。

インデックスを使用して、次のようなインデックスに基づいて異なる列配列に格納します。同様のインデックスを持つ配列内のすべての要素が配列に格納されcolNます。

于 2012-04-04T07:27:10.907 に答える
0

ヒント - 私があなたのためにコードを書いていないことを気にしないでください :)

  • inputstream を使用してファイルを読み取ります。
  • 入力データをトークン化して、読み取った行を分割します。
  • atoi() メソッドを使用して文字列を整数に変換し、配列に入力します。
于 2012-04-04T07:33:20.993 に答える