>  기사  >  백엔드 개발  >  C에서 전체 파일 내용을 문자열로 효율적으로 읽는 방법은 무엇입니까?

C에서 전체 파일 내용을 문자열로 효율적으로 읽는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-01 15:14:02587검색

How to Efficiently Read Entire File Contents into a String in C  ?

Consolidating File Contents into a String in C: A Comprehensive Guide

Perl과 같은 스크립트 언어에서 파일 내용을 문자열로 읽기 단순성의 문제이다. 그러나 C에서 이를 달성하려면 보다 효율적인 접근 방식이 필요합니다. 이 작업을 수행하는 가장 효과적인 방법을 살펴보겠습니다.

이렇게:

<code class="cpp">#include <fstream>
#include <string>

int main(int argc, char** argv)
{
  std::ifstream ifs("myfile.txt");
  std::string content( (std::istreambuf_iterator<char>(ifs) ),
                       (std::istreambuf_iterator<char>()    ) );

  return 0;
}</code>

이 코드의 핵심 내용은 다음과 같습니다.

<code class="cpp">std::string content( (std::istreambuf_iterator<char>(ifs) ),
                       (std::istreambuf_iterator<char>()    ) );</code>

해체:

<code class="cpp">std::string content;
content.assign( (std::istreambuf_iterator<char>(ifs) ),
                (std::istreambuf_iterator<char>()    ) );</code>

여기서는 간단한 할당 연산자(content =) 대신 할당 방법을 사용합니다. 이 기술은 기존 std::string 변수의 내용을 업데이트할 때 특히 유용합니다.

이 단계를 수행하면 파일의 전체 내용을 C의 std::string으로 효율적으로 읽어올 수 있습니다. 이러한 통합 접근 방식은 파일 처리와 관련된 작업을 단순화하여 내부에 저장된 데이터를 포괄적으로 조작할 수 있습니다.

위 내용은 C에서 전체 파일 내용을 문자열로 효율적으로 읽는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.