2017-12-18 3 views
-3

나는 C++ 프로젝트를 가지고 있으며 텍스트 파일에서 가장 큰 파일 이름을 찾아야합니다. 내 텍스트 파일의 예는 다음과 같습니다 그래서C++ 텍스트 파일에서 열을 읽는 방법?

foundedindex = instline.find(" "); 
    inst_host = instline.substr(0, foundedindex); 
    //cout << inst_host << " a" << endl; 
    obj[count].sethost(inst_title); 

, 난 단지 "index.html을"읽고 싶어 "23 HTML"등 "24.html" 나는 하나의 모든 라인을 분리해서 때와 같은 코드에서 정렬하는 데 너무 많은 시간이 걸립니다. 도와주세요.

+5

코드, 오류, 샘플 데이터 또는 텍스트 출력을 일반 텍스트로 게시하십시오. 읽기 어려울 수있는 이미지가 아닌 코드를 테스트하거나 답변에 사용하기 위해 붙여 넣을 수 없으며 적대적입니다. 스크린 리더를 사용하는 사람들. 질문을 편집하여 질문의 본문에 코드를 추가 할 수 있습니다. '{}'버튼을 사용하여 코드 블록을 포맷하거나 같은 효과를 내기 위해 네 개의 공백으로 들여 쓰기하십시오. – tadman

+0

'std :: getline()','std :: istringstream' 및 추출 연산자'>>'를 사용하여 입력 행의 일부만 가져옵니다. – user0042

+1

코드와 데이터가 섞여있는 것 같습니다. – Beta

답변

0

이것은 각 행의 열을 가져 오는 방법입니다.

std::string temp; 
std::vector<vector<std::string>> data; 
while(std::getline(file, temp)) 
{ 
    std::vector<std::string> x; 
    std::istringstream liney(temp); 
    while(std::getline(liney, temp, ' ')) 
    { 
     x.push_back(temp); 
    } 
    data.push_back(x); 
} 
// Then using a column loop through a 2d array. 
int row = 0; 
for(int i = 0; i<data[row].size(); i++) 
{ 
    for(int s = 0; s<data.size(); s++) 
    { 
     data[s][i]; // Do something 
    } 
    row++; 
} 

희망이 있습니다.

+0

@ user0042 내 의견을 반영하여 내 게시물을 편집했습니다. –

+0

@ user0042 죄송합니다. 괜찮습니다. –

+0

Thanks Jake Freeman – Alkyonemis

관련 문제