#ifndef __THREAD_H__
#define __THREAD_H__
#include <Windows.h>
class CThread
{
public:
typedef DWORD (WINAPI *ThreadProc)(LPVOID lpThreadParameter);
CThread();
~CThread();
bool Create(ThreadProc pfun,void * lpParam)
{
m_handle = CreateThread(NULL,0,pfun,lpParam,0,&m_dwThreadID);
return (m_handle == NULL ?false:true);
}
void Exit(DWORD dwThreadID)
{
ExitThread(dwThreadID);
}
private:
HANDLE m_handle;
DWORD m_dwThreadID;
};
class CMutex
{
public:
CMutex()
{
InitializeCriticalSection (&csMyCriticalSection);
}
~CMutex()
{
DeleteCriticalSection(&csMyCriticalSection);
}
int lock()
{
EnterCriticalSection (&csMyCriticalSection);
}
void unlock()
{
LeaveCriticalSection (&csMyCriticalSection);
}
private:
CRITICAL_SECTION csMyCriticalSection;
};
#endif
;
fseek(fp,0,SEEK_END);
nsize = ftell(fp);
fseek(fp,0,SEEK_SET);
char* pChar = new char[nsize + 1];
int nRead = fread(pChar,1,nsize,fp);
if(nRead == -1)
{
delete []pChar;
pChar = NULL;
break;
}
pChar[nRead] = '/0';
char* p = strstr(pChar,";");
char* pTmp = pChar;
while (p != NULL)
{
char tmp[1024] = {0};
memcpy(tmp,pTmp,p - pTmp);
cout<<tmp<<endl;
pTmp = p+1;
savedata(tmp);
p = strstr(pTmp,";");
}
fclose(fp);
fp = NULL;
}
} while (false);
return nRet;
}
int main(int argc, char** argv)
{
ReadFile(argc,argv);
return 0;
}