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;
}
本文由用戶 p34f 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!