std::basic_filebuf::seekoff
Da cppreference.com.
< cpp | io | basic filebuf
![]() |
Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.
La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui. |
protected: virtual pos_type seekoff( off_type off, |
||
Riposiziona il puntatore del file, se possibile, nella posizione che corrisponde esattamente a
off
caratteri all'inizio, alla fine o la posizione corrente del file (a seconda del valore di way
.Original:
Repositions the file pointer, if possible, to the position that corresponds to exactly
off
characters from beginning, end, or current position of the file (depending on the value of way
.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Se il file associato non è aperto (is_open()==false, non riesce immediatamente.
Original:
If the associated file is not open (is_open()==false, fails immediately.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Se la codifica dei caratteri multibyte è dipendente dallo stato (codecvt::encoding() restituito -1) o di lunghezza variabile (
codecvt::encoding()
restituito 0) e il off
offset non è 0, non riesce subito:. questa funzione non è possibile determinare il numero di byte che corrispondono a off
caratteri.Original:
If the multibyte character encoding is state-dependent (codecvt::encoding() returned -1) or variable-length (
codecvt::encoding()
returned 0) and the offset off
is not 0, fails immediately: this function cannot determine the number of bytes that correspond to off
characters.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Se
way
non è std::basic_ios::cur o il off
offset non è 0, e il più risentono operazione fatta su questo oggetto filebuf era uscita (vale a dire, sia il buffer messo non è vuoto, o la funzione più recente è stata chiamata overflow()
), quindi chiama std::codecvt::unshift per determinare la sequenza unshift necessario, e scrive che la sequenza nel file chiamando overflow()
.Original:
If
way
is not std::basic_ios::cur or the offset off
is not 0, and the most resent operation done on this filebuf object was output (that is, either the put buffer is not empty, or the most recently called function was overflow()
), then calls std::codecvt::unshift to determine the unshift sequence necessary, and writes that sequence to the file by calling overflow()
.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
converte Poi il
way
argomento a un valore di whence
int natura è la seguente:..Original:
Then converts the argument
way
to a value whence
of type int as follows:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
valore di
way Original: value of way The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
value of whence
|
std::basic_ios::beg | SEEK_SET |
std::basic_ios::end | SEEK_END |
std::basic_ios::cur | SEEK_CUR |
Poi, se il carattere codifica è a larghezza fissa (
codecvt::encoding()
restituisce un po 'di width
numero positivo, si sposta il puntatore del file come per std::fseek(file, width*off, whence).Original:
Then, if the character encoding is fixed-width (
codecvt::encoding()
returns some positive number width
, moves the file pointer as if by std::fseek(file, width*off, whence).The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
caso contrario, si muove il puntatore del file come per std::fseek(file, 0, whence).
Original:
Otherwise, moves the file pointer as if by std::fseek(file, 0, whence).
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
L'argomento
openmode
, richiesto dalla firma della funzione della classe base , di solito è ignorata, perché std::basic_filebuf
mantiene solo una posizione del file.Original:
The
openmode
argument, required by the base class function signature, is usually ignored, because std::basic_filebuf
maintains only one file position.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Indice |
[modifica] Parametri
off | - | posizione relativa per impostare l'indicatore di posizione di .
Original: relative position to set the position indicator to. The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | ||||||||||||||||||||||||||||||||
dir | - | definisce la posizione di base per applicare l'offset rispetto. Essa può essere una delle seguenti costanti:
Original: defines base position to apply the relative offset to. It can be one of the following constants:
The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | ||||||||||||||||||||||||||||||||
which | - | che definisce dell'ingresso e / o sequenze di uscita per incidere. Essa può essere una o una combinazione delle seguenti costanti:
Original: defines which of the input and/or output sequences to affect. It can be one or a combination of the following constants:
The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[modifica] Valore di ritorno
Un oggetto di nuova costruzione di pos_type tipo che memorizza la posizione di file risultante, o in caso di fallimento.. pos_type(off_type(-1))
Original:
A newly constructed object of type pos_type which stores the resulting file position, or pos_type(off_type(-1)) on failure.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifica] Note
seekoff()
è chiamato da std::basic_streambuf::pubseekoff, che è chiamato da std::basic_istream::seekg, std::basic_ostream::seekp, std::basic_istream::tellg e std::basic_ostream::tellpOriginal:
seekoff()
is called by std::basic_streambuf::pubseekoff, which is called by std::basic_istream::seekg, std::basic_ostream::seekp, std::basic_istream::tellg, and std::basic_ostream::tellpThe text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[modifica] Esempio
#include <iostream> #include <fstream> #include <locale> int main() { // prepare a 10-byte file holding 4 characters in UTF8 std::ofstream("text.txt") << u8"z\u00df\u6c34\U0001d10b"; // or u8"zß水𝄋" // or "\x7a\xc3\x9f\xe6\xb0\xb4\xf0\x9d\x84\x8b"; // open using a non-converting encoding std::ifstream f1("text.txt"); std::cout << "f1's locale's encoding() returns " << std::use_facet<std::codecvt<char, char, std::mbstate_t>>(f1.getloc()).encoding() << '\n' << "pubseekoff(3, beg) returns " << f1.rdbuf()->pubseekoff(3, std::ios_base::beg) << '\n' << "pubseekoff(0, end) returns " << f1.rdbuf()->pubseekoff(0, std::ios_base::end) << '\n';; // open using UTF-8 std::wifstream f2("text.txt"); f2.imbue(std::locale("en_US.UTF-8")); std::cout << "f2's locale's encoding() returns " << std::use_facet<std::codecvt<wchar_t, char, std::mbstate_t>>(f2.getloc()).encoding() << '\n' << "pubseekoff(3, beg) returns " << f2.rdbuf()->pubseekoff(3, std::ios_base::beg) << '\n' << "pubseekoff(0, end) returns " << f2.rdbuf()->pubseekoff(0, std::ios_base::end) << '\n'; }
Output:
f1's locale's encoding() returns 1 pubseekoff(3, beg) returns 3 pubseekoff(0, end) returns 10 f2's locale's encoding() returns 0 pubseekoff(3, beg) returns -1 pubseekoff(0, end) returns 10
[modifica] Vedi anche
Invoca seekoff() Original: invokes seekoff() The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (metodo pubblico) | |
[virtuale] |
riposiziona la posizione del file, usando l'indirizzamento assoluto Original: repositions the file position, using absolute addressing The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (virtuale protetto funzione membro) |
si sposta l'indicatore di posizione file in una posizione specifica in un file Original: moves the file position indicator to a specific location in a file The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (funzione) |