2011-03-01 3 views

답변

0

당신이 아마 것, 데이터를 구분하고있다 :

  • 사용 ifstream을 라인을 읽을 수있는 파일
  • 사용 std::getline(ifstream, line)를 엽니 다. 루프에서이 작업을 수행 할 수 있습니다. 행은 유형이 std::string
  • 이어야하며, 각 행은 istringstream (행)을 사용하여 처리 한 다음 요소로 읽어야합니다.

읽기 데이터를 저장하려면 vector< vector<double> > 또는 일부 종류의 매트릭스 클래스를 사용할 수 있습니다. vector<vector<double> >

ifstream ifs(filename); 
std::vector< std::vector<double> > mat; 
if(ifs.is_open()) 
{ 
    std::string line; 
    while(std::getline(ifs, line)) 
    { 
     std::vector<double> values; 
     std::istringstream iss(line); 
     double val; 
     while(iss >> val) 
     { 
      values.push_back(val); 
     } 
     mat.push_back(values); 
    } 
} 
+0

감사합니다. CashCow. [행]에서 데이터를 추출하는 방법을 알려주시겠습니까? 내 데이터를 [i] [j] 형식으로 읽어야합니다. – nagendra

+1

@negendra - 왜 당신은 * a [i] [j]'형태로 데이터를 필요로합니까? 귀하의 질문은 파일에서 두 개의 데이터 열을 읽고 증식하는 방법이었습니다. 귀하의 의견은 귀하가 숙제 할 것을 SO에게 요청한 것처럼 보입니다. – Tony

0

http://www.cplusplus.com/doc/tutorial/files/ 다음은 C++을 사용하여 파일을 읽는 방법에 대한 팁입니다. 그 후에는 문자열을 정수로 캐스팅하거나 플로팅해야하는 경우가 있습니다. 파일을 가정

+0

감사합니다. Bearder. 그럴 수는 있지만 모든 데이터를 개별적으로 읽을 수는 없습니다. 나는 각 데이터를 [i] [j]처럼 읽으 려합니다. 제발 제발 제발 제발 제발? 감사. – nagendra

+0

http://stackoverflow.com/questions/236129/how-to-split-a-string – VoronoiPotato

관련 문제