2011-03-27 6 views
0

C++을 사용하여 CSV 파일의 열 합계를 계산하는 방법은 무엇입니까?C++을 사용하여 CSV 파일의 열 합계 계산

내 csv 파일은

 
22 45 33 
8 50 70 
4 60 88 

그리고 나는이

 
34 155 190 

과 같은 몇 가지 일이 전 C 프로그래밍을 사용하여 csv 파일에 수식을 추가 할 수 있습니다 배열의 결과를 원하는

+0

CSV 파일의 모든 행에서 각 열의 합계 값을 가져 오려면 어떻게해야합니까? 33 + 70 + 88! = 170부터 혼란 스럽습니다. 지금까지 어떤 시도를 했습니까? –

+0

예. 각 행의 각 열을 더하고 싶습니다. – tariq

+0

CSV 파일이 아닙니다. 이것은 공백으로 구분 된 컬럼 형식입니다. –

답변

0

스토어 배열의 합계 :

int val; 
int sum[column]; 

for each row in csv file 
    for each column i in csv file 
     val = atoi(read_value_from_file()) 
     sum[i] += val 
    end for 
end for 
+0

배열에 하나의 차원 만 있으면 누적 합계 열이 포함됩니다. 행을 읽을 때마다 배열의 누적 합계에 열을 추가하십시오. –

+0

각하가 많습니다 ...이 경우 어떻게해야합니까? – tariq

+0

@ tariq : 여기 있습니다. @ 마이클 DeSimone : 예, OP 이후 단일 값을 나중에 필요할 수 있습니다 이후 두 배열했다 – BlackBear

0
#include <iostream> 
#include <fstream> 

int main(int argc, char *argv[]) { 
    std::ifstream in; 
    int array[3] = {0, 0, 0}; 
    if (argc < 2) 
     return 1; 

    in.open(argv[1], std::ifstream::in); 
    while (in.good()) { 
     int one, two, three; 
     in >> one >> two >> three; 
     array[0] += one; 
     array[1] += two; 
     array[2] += three; 
    } 

    std::cout << array[0] << ' ' << array[1] << ' ' << array[2] << std::endl; 
    in.close(); 

    return 0; 
} 

그런가요?

+0

yoour 회신 주셔서 감사합니다 선생님 친절하게 말해 좋은 그것에 대해() 들어 본 적이 또한 또한 행을 가로 질러 그들을 추가하는 방법 즉, 첫 번째 열에 값을 추가 다음 secoond 열에 세 번째 점프 내 파일에 많은 열이 있습니다. so – tariq

+0

http://www.cplusplus.com/reference/iostream/ios/good/ 전체 파일을 읽습니다. 얼마나 많은 행이 있더라도 상관 없습니다. – Kash

0

테이블을 2D 배열에 저장 한 다음 간단한 for 루프를 사용하여 열의 요소 합계를 계산할 수 있습니다. this 동일한 내용의 코드를 얻기위한 저장소. 도움이 되길 바랍니다.