在C 中讀取行和檔案
正如您在查詢中提到的,逐行或整個讀取檔案比逐字處理它們,特別是對於大文件。以下是如何實現這兩種情況的詳細說明:
逐行讀取:
要逐行讀取文件,您可以使用std::getline功能。以下是一個範例:
#include <fstream> #include <string> int main() { std::ifstream file("Read.txt"); std::string line; while (std::getline(file, line)) { // Process each line here } }
此程式碼片段開啟名為「Read.txt」的檔案並讀取儲存在行字串中的每一行。然後,您可以根據需要處理各個行。
一次讀取整個檔案:
要一次讀取整個檔案內容,您可以將各行連接到單一字串。以下是先前程式碼的修改版本:
std::ifstream file("Read.txt"); std::string line; std::string file_contents; while (std::getline(file, line)) { file_contents += line; file_contents.push_back('\n'); }
此程式碼讀取每一行並將其附加到 file_contents 字串,包括一個換行符以保留原始換行符。最終的 file_contents 字串將包含整個檔案內容。
注意,一般建議使用 ifstream 建構函式以檔案名稱開啟文件,而不是使用 open 方法,並依賴析構函式自動關閉檔案。
以上是如何在 C 語言中有效地讀取行和整個文件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!