www.lydf.net > C++ 用iFstrEAm 读出二进制文件到vECtor 文件内容...

C++ 用iFstrEAm 读出二进制文件到vECtor 文件内容...

vector data;ofstream f("in.dat", ios::binary);unsigned char c;while(f>>c) data.push_back(c);

1). #include <iostream>#include <vector> using namespace std; int main() { int a[7]={1,2,3,4,5,6,7}; vector<int> va(a,a+7); for(int i=0;i<va.size();i++) cout<<va[i]<<" "; } 这个是简单的遍历向量,输出向量全部元素. 2).这是简单的从向量 test.

就是文本形式的,如果是Windows系统,例如打开C:\bin\test.txtinput_data.open("c:\\bin\\test.txt");常见的..和.也支持Linux系统就是把\\换成/

#include <iostream> #include <fstream> //文件操作using namespace std;void main(){ char name[1000]; ofstream out("D:\\my.txt",ios::binary|ios::out); //在D:创建文件he.txt,用out往文件里输入值 cout<<"输入文件内容:"<<endl; cin>>

#include#includeusing namespace std;int main(){ifstream fin("p.txt");int i;while (fin>>i)cout 评论0 0 0

不管你的数据类型是什么,以二进制形式存储的时候,都可以把它以字节的形式存储.比如int,也许有四个字节,我们只需要把它的地址换成char*,并且写入4个字节就行了,读出也是一样的.代码 [cpp] view plain copy #include <iostream> #

使用ifstream,设置ios::binary,然后用read函数即可#include <fstream>using namespace std;int main(){ char ch; ifstream is("a.dat", ios::binary); is.read(&ch, sizeof(char)); return 0;}

ifstream流可以的,但是你要设置为binary mode

一次都读出来肯定是太大了,你可以用按需读取的方法.计算一下能显示哪部分,就读哪部分,剩下的忽略掉就可以了.具体实现可以参照一下VirtualStringTree这个控件,很好的例子

a={2,"dog"};这样的结构体赋值方式只能用在声明语句中,再次赋值的时候不可以,你需要这样:a.n = 2;a.str = "dog";

相关搜索:

网站地图

All rights reserved Powered by www.lydf.net

copyright ©right 2010-2021。
www.lydf.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com