seekp()和seekg()函数简单的应用

seekp()和seekg()函数简单的应用C++中seekg()和seekp()的简单应用

大家好,又见面了,我是你们的朋友全栈君。

#include<iostream>
#include<fstream>
using namespace std;
class Stu
{

public:
 char name[10];
 int id;
 Stu()
 {

  strcpy_s(name, “Z”);
  id = 0;
 }
 Stu(char *n, int i)
 {

  strcpy_s(name, n);
  id = i;
 }
};
int main()
{

 ofstream out1;
 out1.open(“d.dat”, ios::binary);
 Stu s1[3];
 s1[0] = { “A”, 10 };
 s1[1] = { “B”, 20 };
 s1[2] = { “C”, 30 };

 for (int i = 0; i < 3; i++)
 {

  out1.write((char*)&s1[i], sizeof(s1[i]));//保存到磁盘中
 }
 out1.close();
 out1.open(“d.dat”, ios::binary);
 out1.seekp(2 * sizeof(s1[0]), ios::cur);//将磁盘文件指针设置到s1[2]的位置
 Stu ss(“lin”, 20);
 out1.write((char*)&ss, sizeof(ss));//修改s1[2]的值

 out1.close();

 ifstream in1;
 Stu p;
 in1.open(“d.dat”, ios::binary);
 in1.seekg(2*sizeof(s1[0]), ios::cur);//将文件指针设置到s1[2]的位置
 in1.read((char *)&p, sizeof(s1[1]));//读取s1[2]的值,检查修改后是否成功
 cout << “name:” << p.name <<‘\t'<< “id:” << p.id << endl;
 in1.close();
 return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140919.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Office2016简体中文专业版32/64

    Office2016简体中文专业版32/64仅供参考链接:https://pan.baidu.com/s/1-rUA6atszrSxkm1aMLO7AQ提取码:1jne

    2022年7月19日
  • Js类型转换之相等运算符[初级]「建议收藏」

    Js类型转换之相等运算符[初级]「建议收藏」Js类型转换之相等运算符[初级]

    2022年4月21日
  • datagrip激活【最新永久激活】

    (datagrip激活)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html08G05E7DZH-eyJsaWN…

    2022年3月28日
  • 多模态综述

    多模态综述多模态综述介绍参考文献:《MultimodalMachineLearning:ASurveyandTaxonomy》介绍我们身边的环境就是一个多模态的环境,看到的实体、听到的声音、闻到的气味和尝到的味觉。本篇综述不是着重于多模态的应用,而是重点关注多模态的方法和技术。多模态问题的定义在于数据来源是不同模态的数据,而这些数据具有异质性(heterogeneity),则带来了多模态的五个挑战:representation,translation,alignment,fusion和co-

    2022年6月17日
  • 放出一套完整的进销存软件源码[通俗易懂]

    放出一套完整的进销存软件源码[通俗易懂]商易进销存2.0vb+sqlserver下载地址:http://60.2.39.130/microerp/源码非常完整,从速下载,过期失效,不接受菜鸟们的技术帮助请求。

    2022年5月31日
  • Telerik的RadControls控件(三)

    Telerik的RadControls控件(三)相信大家学习了RadControl中的RadWindow、RadAjaxManager、RadAjaxLoadingPanel控件后,一定会觉得它是解放.Net技术人员Web开发的技术工具,从而不再为Asp。NET中的局部刷新而绞尽脑汁。  现在我告诉你,前边才仅仅是你发现Web开发更加容易、方便的第一步,通过下来项目中其他常用Rad控件的介绍,你会更加欣喜若狂。好了下来我就介绍另一重量级的控

    2022年7月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号