1
OpenMP를 사용하여 디스크에서 많은 행을 포함하는 큰 파일을 읽고 싶습니다. 한 가지 방법은 seekg()
기능을 사용하는 것 같습니다. 하지만 두통 부분은 seekg()
파일 인덱스를 특정 바이트로 이동하는 기능 만 지원합니다.C++ 파일마다 각 줄을 정렬하는 방법은 무엇입니까?
각 행의 크기가 정확히 동일하면 올바르게 작동합니다. 그러나 각 줄의 크기가 완전히 다른 경우 어떻게해야하는지 모릅니다. 그래서 나에게 힌트를 줄 수 있니?
감사합니다 ~ 내가 디스크에 바이트 대신 문자열을 저장하는 코드를 수정했습니다. 그리고 그 작품! – uniqueliu
파일은 항상 바이트를 보유하므로 문자열 대신 바이트를 저장하는 것이 무엇을 의미하는지 명확하지 않습니다. 하지만 한 가지 가능한 오해를 피하려면 : 파일을 여러 조각으로 나누라고 말하면 실제로 파일을 작은 파일로 분할해야한다는 의미는 아닙니다. 모든 텍스트를 하나의 파일에 보관할 수 있지만 작업 내에서 찾을 간격이 일정한 위치를 선택하기 만하면됩니다. – Wyzard
또 다른 한 가지 : 작업이 한 줄의 결말도 찾지 않고 청크의 끝에 도달하면 텍스트를 전혀 처리하지 않고 작업을 중단해야합니다. 즉, 세 개 이상의 청크에 걸쳐 긴 줄이 있고 중간에있는 청크를 보는 작업은 해당 줄 또는 다음 줄의 시작을 볼 수 없기 때문에 아무 것도 할 수 없습니다. 해야 할 것. – Wyzard