首頁 > 後端開發 > C++ > 主體

如何在 C 中高效地將整個文件內容讀取到字串中?

Mary-Kate Olsen
發布: 2024-11-01 15:14:02
原創
586 人瀏覽過

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

在C 中將檔案內容合併為字串:綜合指南

使用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 =),而是使用了allocate 方法。在更新現有 std::string 變數的內容時,此技術特別有用。

透過執行以下步驟,您可以有效地將檔案的全部內容讀取到 C 中的 std::string 中。這種整合方法簡化了涉及文件處理的操作,允許對儲存在其中的資料進行全面操作。

以上是如何在 C 中高效地將整個文件內容讀取到字串中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!