溫馨提示×

c++ seekg在文件操作中的作用

c++
小樊
136
2024-11-26 12:58:20
欄目: 編程語言

seekg 是 C++ 文件流庫 <fstream> 中的一個成員函數,用于在輸入文件(如 ifstream)中設置讀取位置

seekg 函數的基本語法如下:

std::istream& seekg (std::streampos pos, std::ios_base::openmode which = std::ios_base::beg);

參數說明:

  • pos:要設置的新位置,可以是文件中的任何位置。
  • which:指定移動方式,可以是以下值之一:
    • std::ios_base::beg:從文件開頭開始計算位置。
    • std::ios_base::cur:從當前位置開始計算位置。
    • std::ios_base::end:從文件末尾開始計算位置。

示例:

#include <iostream>
#include <fstream>
#include <string>

int main() {
    std::ifstream file("example.txt");
    if (!file) {
        std::cerr << "Error opening file!" << std::endl;
        return 1;
    }

    // 將讀取位置移動到文件開頭
    file.seekg(0, std::ios_base::beg);

    std::string line;
    // 從當前位置開始讀取文件內容
    while (std::getline(file, line)) {
        std::cout << line << std::endl;
    }

    // 將讀取位置移動到文件末尾
    file.seekg(0, std::ios_base::end);

    // 將讀取位置移回文件開頭
    file.seekg(0, std::ios_base::beg);

    return 0;
}

在這個示例中,我們首先打開一個名為 “example.txt” 的文件,然后使用 seekg 函數將讀取位置移動到文件開頭、當前位置和文件末尾。最后,我們逐行讀取文件內容并輸出到控制臺。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女