zoukankan      html  css  js  c++  java
  • C++读取文件,将文件内容读取到struct中

    struct定义:

    #include "stdafx.h"
    //内存对齐1字节
    #pragma pack(1)
    
    struct Day
    {
    	int DateTime;
    	int Open;
    	int High;
    	int Low;
    	int Close;
    };
    
    #pragma pack()
    

    指针读取:

    // Test.cpp : Defines the entry point for the console application.
    //
    
    #include "stdafx.h"
    #include "Day.cpp"
    #include <sys\stat.h>
    using namespace std;
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	fstream f;
    	const char* filename = "e:\\t.dat";
    	f.open(filename,ios::binary|ios::in);
    
    	struct _stat info;
    	_stat(filename,&info);
    	int filesize = info.st_size;
    	const int SIZE_OF_DAY = sizeof(Day);
    	cout<<"sizeof(Day)="<<SIZE_OF_DAY<<endl;
    	const int days_count = filesize/sizeof(Day);
    	cout<<"day_count="<<days_count<<endl;
    	Day* day = new Day[days_count];
    	//Day* dayTemp=day;
    	for(int i=0;i<days_count;i++)
    	{
    		Day* p2Day = day + i;
    		f.read((char*)p2Day,SIZE_OF_DAY);
    		cout<<p2Day->DateTime<<endl;
    		cout<<p2Day->Close<<endl;
    	}
    	f.close();
    	delete[] day;
    	system("pause");
    
    	return 0;
    }
    

      

  • 相关阅读:
    Django 前戏
    SQL基本语句
    如何正确安装Mysql
    JQuery
    解疑答惑—解决脱离标准文档流(恶心的浮动)
    事件
    卷基于快照进行恢复
    centos7下Firewall使用详解
    基于镜像卷启动的虚机快照代码分析
    nova卸载volume源码分析
  • 原文地址:https://www.cnblogs.com/yukaizhao/p/cpp_file_struct.html
Copyright © 2011-2022 走看看