91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

seekp()和seekg()函數簡單的應用

小億
215
2023-12-20 14:04:08
欄目: 編程語言

seekp()和seekg()函數是C++中的流定位函數,用于在流中定位讀寫位置。

seekp()函數用于定位輸出流的寫入位置,seekg()函數用于定位輸入流的讀取位置。

兩個函數的參數是一個偏移量,用于指定相對于特定位置的位置。偏移量可以是正數、負數或零。

seekp()函數有兩個參數,第一個參數是偏移量,第二個參數是指定開始位置的標志。開始位置標志有三個選項:

  • ios::beg:相對于流的起始位置
  • ios::cur:相對于當前位置
  • ios::end:相對于流的末尾位置

seekg()函數的參數和seekp()函數相同。

下面是seekp()和seekg()函數的簡單應用示例:

#include <iostream>
#include <fstream>

int main() {
   std::ofstream outputFile("example.txt");

   // 寫入數據到文件
   outputFile << "Hello, World!" << std::endl;
   outputFile << "This is a test.";

   // 移動寫入位置到文件起始位置
   outputFile.seekp(0, std::ios::beg);

   // 再次寫入數據到文件
   outputFile << "New data.";

   // 關閉文件
   outputFile.close();

   std::ifstream inputFile("example.txt");

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

   // 獲取文件大小
   std::streampos fileSize = inputFile.tellg();

   std::cout << "File size: " << fileSize << " bytes" << std::endl;

   // 關閉文件
   inputFile.close();

   return 0;
}

以上示例中,首先創建一個輸出文件流outputFile,寫入一些數據到文件中。然后使用seekp()函數將寫入位置移動到文件起始位置,并再次寫入新的數據。

接下來創建一個輸入文件流inputFile,使用seekg()函數將讀取位置移動到文件末尾,并使用tellg()函數獲取文件的大小。

最后關閉文件流。

輸出結果為:

File size: 16 bytes

這個例子演示了如何使用seekp()seekg()函數在文件中定位讀寫位置。

0
永城市| 莲花县| 新干县| 聂拉木县| 大关县| 宁津县| 抚远县| 武乡县| 嘉黎县| 界首市| 边坝县| 铜鼓县| 徐闻县| 富民县| 天津市| 梅河口市| 察雅县| 印江| 阳高县| 东乌珠穆沁旗| 清徐县| 林口县| 廊坊市| 阿拉善左旗| 赤壁市| 娄底市| 德州市| 保德县| 子洲县| 长沙市| 阿拉善左旗| 高邑县| 江孜县| 富锦市| 项城市| 迁西县| 金溪县| 大关县| 富川| 牡丹江市| 黄石市|