【发布时间】:2015-05-05 13:12:15
【问题描述】:
所以我最近才开始尝试 C++,并且已经学习了基础知识。我只想知道如何在文件中写入/读取字节/整数/长整数。
首先,我想告诉你我为什么需要它。基本上我想从一个有特殊格式的文件中读取数据。所有数据都以二进制形式写入该文件中。
我已经用另一种语言编写了那个程序,我想用 C++ 重新编写我的程序。我以前使用的语言称为 BlitzMax 并且在该语言中已经实现了功能,并且只是称为 WriteByte、ReadByte、WriteInt、ReadInt 等。如果你们愿意编写(或至少链接我的源代码)我的函数需要,不胜感激。如果您为我编写它们,您能否也解释一下它们是如何工作的?
非常感谢所有帮助我的人! :)
编辑:在这里,根据要求,代码有点符合我的需要。它确实将 int 50 以二进制形式写入文件,但这是我所能做到的。我仍然无法理解某些部分(代码在谷歌中找到,我对其进行了一些编辑)。而且我仍然需要一种写入字节和长整数的方法。
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
int num = 50
ofstream file("file.txt", ios::binary);
file.write(reinterpret_cast<const char *>(&num), sizeof(num));
file.close ();
return 0;
}
【问题讨论】:
-
这不是一个“给我codez”的网站。展示你的尝试。
-
我没有让你把我做成一个完整的程序,我只想找到将二进制写入文件的方法。我对如何制作它有一个非常小的想法,这就是为什么我要求制作代码并解释它是如何工作的。但可以肯定的是,我可以向您展示我到目前为止所做的尝试。我编辑了,看看吧。
-
stackoverflow.com/questions/9244563/…;由于可移植性,有些人可能会建议您不要使用二进制编写
标签: c++ io binary fstream blitzmax