> 백엔드 개발 > C++ > C에서 파일 크기를 안정적으로 결정하는 방법은 무엇입니까?

C에서 파일 크기를 안정적으로 결정하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-21 07:46:10
원래의
303명이 탐색했습니다.

How to Reliably Determine File Size in C  ?

C에서 파일 크기 결정: 안정적이고 이식 가능한 접근 방식

C에서 파일 크기를 구하는 것은 프로그래밍에서 자주 접하는 중요한 작업입니다. 작업. 이를 달성하는 데 가장 적합한 방법을 식별하려면 이식성, 안정성, 코드 단순성과 같은 요소를 고려하는 것이 중요합니다.

널리 사용되는 접근 방식 중 하나는 C 표준 라이브러리의 ifstream 클래스를 활용하는 것입니다. 바이너리 모드에서 파일을 열고 ate 플래그를 지정하면 입력 스트림이 파일 끝을 찾습니다. 이어서, Tellg() 멤버 함수를 사용하여 파일 내의 현재 위치를 검색하여 파일 크기를 효과적으로 제공할 수 있습니다.

코드 예:

#include <fstream>

std::ifstream::pos_type filesize(const char* filename) {
    std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary);
    return in.tellg(); 
}
로그인 후 복사

그러나 이 접근 방식에는 잠재적인 주의 사항이 있다는 점에 유의하는 것이 중요합니다. Tellg()는 특정 플랫폼에서 파일 크기를 항상 정확하게 보고하지 않습니다. 보다 강력한 솔루션을 위해서는 바이너리 모드에서 파일을 열기 전에 seekg() 및 Tellg()를 사용하여 파일 끝을 찾는 것과 같은 대체 방법이 필요할 수 있습니다.

제공된 코드 조각은 효과적으로 계산합니다. 파일을 열고 액세스할 수 있다는 가정을 기반으로 파일 크기. 파일을 열거나 읽는 동안 발생할 수 있는 예외를 고려하려면 프로덕션급 애플리케이션에 적절한 오류 처리 메커니즘을 구현해야 합니다.

위 내용은 C에서 파일 크기를 안정적으로 결정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿