亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? controltxt.cpp

?? 此程序為EVC編寫的MIS系統
?? CPP
字號:
// 該類的功能是把.txt文件與數據庫文件相互轉換。
// 創建時間2004.02.24
// 創建人:茍艷
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "抄表系統.h"
#include "ControlTxt.h"
#include "CreateDB.h"
#include "rapi.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
/**********************************************************************/
//抄表記錄的各個字段
#define prop_01  L"水表賬號"
#define prop_03  L"用戶地址"
#define prop_02  L"用戶名稱"
#define prop_04  L"字輪讀數"
#define prop_05  L"抄表人員名稱"
#define prop_06  L"抄表日期"
#define prop_07  L"備注"

//////////////////////////////////////////////////////////////////////
extern CCreateDB  database;
//////////////////////////////////////////////////////////////////////

CControlTxt::CControlTxt()
{
	position=0;

}

CControlTxt::~CControlTxt()
{

}

//
TCHAR * CControlTxt::Readtxtfile()   //
{
	char buffer[300];
	//TCHAR data[600];
	//LPWSTR data;
	TCHAR  *data,*point,*head;
	DWORD dwptr;
	HANDLE Txthandle;
	int position=0;
	char c;
	UINT retByt;
	//
	head=data;   //獲得數組的頭指針
	//
	WIN32_FIND_DATA filedata;
	LPCWSTR lpFileName=L"\\My Documents\\用戶檔案記錄.txt";
	HANDLE filehandle=FindFirstFile(lpFileName,&filedata);
	if(filehandle==INVALID_HANDLE_VALUE)
	{
		::AfxMessageBox(L"該文件夾中無用戶檔案記錄.txt文件!");
		return	NULL;
	}
	else 
	{
		CString testStr;
		int nLen,i=0,length=0;
		Txthandle=CreateFile(lpFileName,GENERIC_WRITE |GENERIC_READ,        //打開.txt文件
		                  0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
		if(Txthandle==INVALID_HANDLE_VALUE)
		{
			::AfxMessageBox(L"用戶檔案記錄打開失敗!");
			return NULL;
		}
		dwptr=SetFilePointer(Txthandle,position,NULL,FILE_BEGIN);//文件指針
		CFile fFile((int)Txthandle);
		memset(buffer,0,300);
		retByt=fFile.Read(&c,1);
	    buffer[i++]=c;
		while(retByt>=1)  //文件還沒讀完
		{
			if(i>300)     //緩存已滿
			{
			nLen=MultiByteToWideChar(CP_ACP,0,(char*)buffer,i-1,0,0);//Ansi轉換成Unicode的長度
			length+=nLen;
			point=new TCHAR[nLen];
			MultiByteToWideChar(CP_ACP,0,(char*)buffer,i-1,point,nLen);
			wcscpy(data+length-nLen,point);
			memset(buffer,0,300);
			i=0;
			}
			 position+=1;
			dwptr=SetFilePointer(Txthandle,position,NULL,FILE_BEGIN);//文件指針
			retByt=fFile.Read(&c,1);
			buffer[i++]=c;
		}
		if(length==0)
		{
			///Ansi轉換成Unicode
			nLen=MultiByteToWideChar(CP_ACP,0,(char*)buffer,i-1,0,0);//Ansi轉換成Unicode的長度
			data=new TCHAR[nLen];
			MultiByteToWideChar(CP_ACP,0,(char*)buffer,i-1,data,nLen);
		}
		else
		{	
			nLen=MultiByteToWideChar(CP_ACP,0,(char*)buffer,i-1,0,0);//Ansi轉換成Unicode的長度
			length+=nLen;
			point=new TCHAR[nLen];
			MultiByteToWideChar(CP_ACP,0,(char*)buffer,i-1,point,nLen);	
			wcscpy(data+length-nLen,point);
			data=head;
		}
		
		 fFile.Close();
		 CloseHandle(Txthandle);
		 FindClose(filehandle);
	}
	return data;
}
////
/*BOOL CControlTxt::WriteDatabase(TCHAR tmpdata[50],int flag)
{
	CEOID record=-1,oid;
	//CEPROPVAL tempprop;
	CEPROPVAL propval[3];
	HANDLE Writehandle;
	DWORD index;
	CString str;

		if(database.CreateWtableDB (1))    //以水表賬號的排序打開抄表記錄
				Writehandle=database.writetbhandle ;
		switch(flag)
		{
			case 1: propval[0].propid =MAKELONG(CEVT_LPWSTR,prop_01);  //水表賬號
					propval[0].wFlags =0;
					propval[0].val .lpwstr =tmpdata;
					//database.wtableflag =flag;
					//if(database.CreateWtableDB (1))
						//Writehandle=database.writetbhandle ;
					break;
			case 2: 
					propval[1].propid =MAKELONG(CEVT_LPWSTR,prop_02);  //用戶名稱
					propval[1].wFlags =0;
					propval[1].val .lpwstr =tmpdata;
				///	database.wtableflag =flag;
					//if(database.CreateWtableDB (2))
					//	Writehandle=database.writetbhandle ;
					break;
			case 3:
					propval[2].propid =MAKELONG(CEVT_LPWSTR,prop_03);  //用戶地址
					propval[2].wFlags =0;
					propval[2].val .lpwstr =tmpdata;
					//database.wtableflag =flag;
					//if(database.CreateWtableDB (3))
						//Writehandle=database.writetbhandle ;
				//	break;
		}
		//propval[flag-1]=tempprop;
		//oid=CeSeekDatabase(Writehandle,CEDB_SEEK_VALUEFIRSTEQUAL,(DWORD)&tempprop,&index);
	//
	
		//
		if(flag==3)   //向數據庫中添加新的記錄
		{
			record=CeWriteRecordProps(Writehandle,0,3,propval);
		
			if(record==0)
			{
				int error;
				TCHAR text[64];
				error=GetLastError();
				wsprintf(text,L"Db Write.error=%d(%x)",error,error);
				::AfxMessageBox(text);
				CloseHandle(Writehandle);
				return FALSE;
			}
		}

	//
	CloseHandle(Writehandle);
	return TRUE;
}*/
//
BOOL CControlTxt::Writetxtfile()  //從抄表記錄中取出字段數據轉換寫入文本文件
{
	LPCWSTR filename=L"\\My Documents\\抄表記錄.txt";
	CEOID findrecord;
	DWORD index;
	WORD propnumber;
	PCEPROPVAL pRecord=0;
	DWORD cbBuff;
	TCHAR RecordStr[50];
	BOOL result;
	HANDLE Writehandle,txtHandle;
	//
	//把以前存在的抄表記錄文本文件清0
	txtHandle=CreateFile(filename,GENERIC_WRITE |GENERIC_READ,        
		                  0,NULL,TRUNCATE_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
	CFile fFile((int)txtHandle);
	fFile.Close();
	CloseHandle(txtHandle);
	//


	if(result=database.CreateWtableDB())  ///打開了抄表記錄
	{
		Writehandle=database.writetbhandle;

		findrecord=CeSeekDatabase(Writehandle,CEDB_SEEK_BEGINNING,0,&index);
		if(findrecord==0)
		{
			::AfxMessageBox(L"表中無記錄!");
			CloseHandle(Writehandle);
			return FALSE;
		}
		findrecord=CeReadRecordProps(Writehandle,CEDB_ALLOWREALLOC,&propnumber,NULL,(LPBYTE*)&pRecord,&cbBuff);
		while(findrecord!=0)
		{
			for(int i=0;i<propnumber;i++)
			{
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_01))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_02))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_03))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_04))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_05))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_06))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				if(pRecord->propid==MAKELONG(CEVT_LPWSTR,prop_07))
				lstrcpy(RecordStr,pRecord->val .lpwstr );
				//
				writeTXT(filename,RecordStr,1);///一個記錄的一個屬性賦值完了
				//
				pRecord++;
			}
			writeTXT(filename,NULL,2);
			pRecord=0;
			findrecord=CeReadRecordProps(Writehandle,CEDB_ALLOWREALLOC,&propnumber,NULL,(LPBYTE*)&pRecord,&cbBuff);	
		}
	}
	else
		return FALSE;
	CloseHandle(Writehandle);
	return TRUE;
}
//
BOOL CControlTxt::writeTXT(LPCWSTR txtFile,TCHAR data[50],int Flag) //轉換文本文件函數
{
	char s;
	unsigned char buffer[125];
	DWORD dwPtr;
	int nLen;
	HANDLE txtHandle;

///////////////////////////////////////////////////////////////////
	txtHandle=CreateFile(txtFile,GENERIC_WRITE |GENERIC_READ,        //創建.txt文件
		                  0,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
		if(txtHandle==INVALID_HANDLE_VALUE)
		{
			::AfxMessageBox(L"創建.txt文件失敗!");
			return FALSE;
		}
		dwPtr=SetFilePointer(txtHandle,position,NULL,FILE_BEGIN);//文件指針
		CFile fFile((int)txtHandle);
		switch(Flag)
		{
		case 1:
			{
				//從Unicode轉換到Ansi
				memset(buffer,0,125);
				nLen=WideCharToMultiByte(CP_ACP,0,data,lstrlen(data),0,0,0,0);//要轉化成ANSI的長度
				WideCharToMultiByte(CP_ACP,0,data,lstrlen(data),(char*)buffer,125,0,0);

				for(int i=0;i<strlen((char*)buffer);i++)
				{
					s=buffer[i];
					fFile.Write(&s, 1);
				}
					s=';';
					fFile.Write(&s, 1);
				position+=strlen((char*)buffer)+1;
				break;
			}
		case 2:
			{
				s='/';
				for(int i=0;i<2;i++)
					fFile.Write(&s, 1);
					position+=2;
					break;
			}
	
		}
		fFile.Close();

		CloseHandle(txtHandle);
		return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品福利av导航| 国内精品免费**视频| 五月激情丁香一区二区三区| 精品一区二区成人精品| 在线观看欧美日本| 国产亚洲精品bt天堂精选| 亚洲h在线观看| 99久久伊人网影院| 精品国产青草久久久久福利| 一区二区视频在线| 高清av一区二区| 精品免费视频.| 婷婷综合另类小说色区| 欧美伊人精品成人久久综合97| 欧美精彩视频一区二区三区| 久久99精品国产麻豆婷婷| 欧美日韩精品免费观看视频| 亚洲视频每日更新| 国产激情精品久久久第一区二区 | 亚洲欧美综合色| 精品一区免费av| 欧美一区二区三区白人| 亚洲成人动漫av| 一本久久精品一区二区| 国产女人18水真多18精品一级做| 久久精品一区四区| 一区二区三区在线免费播放| av一区二区三区在线| 一区二区三区在线观看欧美 | 国产毛片精品视频| 欧美一区二区视频在线观看| 日韩精品电影一区亚洲| 欧美片在线播放| 五月婷婷激情综合网| 欧美日韩国产综合一区二区三区 | 91看片淫黄大片一级在线观看| 国产精品色哟哟网站| 国产98色在线|日韩| 欧美激情一区二区三区蜜桃视频| 国产成人精品免费网站| 国产精品狼人久久影院观看方式| 成人国产视频在线观看| 中文字幕中文乱码欧美一区二区 | 亚洲黄色在线视频| 波多野结衣中文一区| 久久看人人爽人人| 激情文学综合插| 欧美激情一区二区在线| 成人短视频下载| 伊人性伊人情综合网| 欧美色区777第一页| 日本欧美一区二区在线观看| 欧美成va人片在线观看| 国产成人亚洲精品青草天美| 国产精品国产a| 欧美日本精品一区二区三区| 另类小说一区二区三区| 国产精品视频观看| 色久综合一二码| 免费人成在线不卡| 国产色婷婷亚洲99精品小说| 91免费视频大全| 日韩av一区二区三区四区| 色综合久久天天| 欧美日韩美女一区二区| 丝袜诱惑制服诱惑色一区在线观看| 在线精品亚洲一区二区不卡| 日韩电影免费一区| 中文字幕高清一区| 欧美色区777第一页| 国产一区二区三区在线观看免费 | 99久久久久久| 日韩精品福利网| 国产精品久久看| 日韩免费一区二区三区在线播放| 成人免费不卡视频| 免费在线看一区| 亚洲色图欧美偷拍| 精品欧美久久久| 欧美自拍丝袜亚洲| 懂色av一区二区三区免费看| 日韩综合在线视频| 亚洲欧洲av色图| 精品99999| 欧美高清视频一二三区| www.日韩在线| 国产一区二区三区精品欧美日韩一区二区三区| 国产精品久久久久久久久动漫| 日韩女优制服丝袜电影| 欧美天堂一区二区三区| 成人国产精品免费| 韩国精品在线观看| 爽好久久久欧美精品| 亚洲伦在线观看| 国产精品美女久久久久久2018| 精品国产一区二区精华| 在线播放91灌醉迷j高跟美女| 91麻豆视频网站| 成人av一区二区三区| 国内精品久久久久影院色| 日韩精品成人一区二区在线| 亚洲图片有声小说| 一区二区三区中文免费| 亚洲欧洲三级电影| 国产精品丝袜久久久久久app| 久久尤物电影视频在线观看| 日韩区在线观看| 91精品国产综合久久福利软件| 欧美亚洲综合色| 欧洲国产伦久久久久久久| 色网综合在线观看| 日本韩国一区二区三区| www.久久久久久久久| 99在线精品视频| 99精品欧美一区二区蜜桃免费 | 日韩av在线播放中文字幕| 亚洲成av人片在线| 香蕉加勒比综合久久| 亚洲成人动漫在线免费观看| 亚洲综合在线免费观看| 亚洲在线视频免费观看| 亚洲一二三级电影| 三级欧美在线一区| 日本亚洲电影天堂| 极品美女销魂一区二区三区免费| 美国毛片一区二区| 国产精品一区专区| 高清日韩电视剧大全免费| 成人黄色免费短视频| 91丨九色丨蝌蚪富婆spa| 91久久精品日日躁夜夜躁欧美| 国产欧美日韩激情| 日韩限制级电影在线观看| 欧美大胆一级视频| 久久综合九色综合欧美98| 中文字幕第一区二区| 最新中文字幕一区二区三区 | 色综合天天综合色综合av| 色久综合一二码| 欧美一区二区三区四区久久 | 中文字幕中文字幕中文字幕亚洲无线| 亚洲少妇中出一区| 午夜精品久久久久久久 | 视频一区二区三区入口| 久久国产生活片100| 成人av午夜电影| 欧美日韩电影在线| 日韩欧美国产wwwww| 国产精品乱码妇女bbbb| 亚洲一线二线三线视频| 精品亚洲aⅴ乱码一区二区三区| 成人免费毛片app| 欧美精品一二三四| 国产精品色婷婷| 欧美不卡激情三级在线观看| 国产美女av一区二区三区| 成人精品高清在线| 欧美在线免费播放| 久久只精品国产| 亚洲一区日韩精品中文字幕| 国内久久精品视频| 色吊一区二区三区| 久久久天堂av| 天堂久久一区二区三区| 成人av免费在线| 精品黑人一区二区三区久久| 亚洲码国产岛国毛片在线| 韩国成人福利片在线播放| 91传媒视频在线播放| 26uuu国产一区二区三区| 亚洲大片免费看| 99精品国产热久久91蜜凸| 精品国产污污免费网站入口| 亚洲第一搞黄网站| 色综合久久天天| 国产精品高潮呻吟| 国产一区二区免费在线| 欧美美女网站色| 久久99国产精品麻豆| 91同城在线观看| 日本一区二区三区高清不卡| 麻豆精品新av中文字幕| 久久亚洲二区三区| 3d成人动漫网站| 18涩涩午夜精品.www| 狠狠色狠狠色合久久伊人| 欧美欧美欧美欧美| 亚洲一区在线电影| 91蜜桃免费观看视频| 国产精品对白交换视频| 成人免费不卡视频| 欧美国产97人人爽人人喊| 国产麻豆视频一区二区| 精品国产乱码久久久久久久| 青草国产精品久久久久久| 欧美日韩成人高清| 午夜久久久影院| 91精品蜜臀在线一区尤物| 调教+趴+乳夹+国产+精品| 欧美精三区欧美精三区|