seekg() trong thư viện iostream cho phép tìm kiếm vị trí tùy ý trong file. Dùng để đặt vị trí ký tự tiếp theo sẽ đọc từ luồng nhập.
Cú pháp
istream& seekg(streamoff offset, ios_base::seekdir dir); istream& seekg(streampos position); Tham số: position: vị trí mới trong bộ đệm luồng. offset: giá trị nguyên kiểu streamoff, độ dịch chuyển so với dir. dir: hướng tìm kiếm (ios_base::beg, ios_base::cur, ios_base::end).
Các bước và thao tác
Bắt đầu Mở file dữ liệu để nhập/xuất. Ghi 'TutorialsPoint' vào file. Tìm đến vị trí 9 từ đầu file. Đọc 5 ký tự tiếp theo vào buffer F. Kết thúc F bằng null. In nội dung. Đóng file. Kết thúc
Ví dụ
#include <fstream>
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
fstream File("d.txt", ios::in | ios::out);
File << "TutorialsPoint";
File.seekg(9, ios::beg);
char F[9];
File.read(F, 5);
F[5] = 0;
cout << F << endl;
File.close();
return 0;
}
Kết quả
Point