Cpp-standard-library-cpp-stringbuf-pubseekpos
提供:Dev Guides
C ++ streambuf-pubseekpos
説明
内部位置ポインタを絶対位置に設定するために使用され、保護された仮想メンバーseekposを同じ引数posおよびwhichで呼び出します。
宣言
- 以下は、std
- basic_streambuf :: pubseekposの宣言です。
pos_type pubseekpos (pos_type pos, ios_base::openmode which = ios_base::in | ios_base::out);
パラメーター
*off* -位置ポインタの新しい絶対位置です。
戻り値
変更された位置ポインタの新しい位置値を返します。
例外
基本的な保証-例外がスローされた場合、ストリームバッファは有効な状態です。
データの競合
ストリームバッファオブジェクトを変更します。
例
- 以下の例では、std
- basic_streambuf :: pubseekposについて説明しています。
#include <iostream>
#include <fstream>
int main () {
std::fstream filestr ("test.txt");
if (filestr) {
std::streambuf* pbuf = filestr.rdbuf();
long size = pbuf->pubseekoff(0,filestr.end);
if (size>20) {
char buffer[11];
pbuf->pubseekpos(10);
pbuf->sgetn (buffer,10);
buffer[10]=0;
std::cout << buffer << '\n';
}
filestr.close();
}
return 0;
}