有关文件的打开,读写操作问题
直接上代码
HANDLE hFile;
hFile=CreateFile(TEXT("5.txt"), GENERIC_WRITE,0,NULL,CREATE_ALWAYS,
FILE_FLAG_WRITE_THROUGH,NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
OutputDebugString(_T("CreateFile fail!\r\n"));
}
DWORD WordNum=0;
wchar_t ch[100]=_T("moon");
wchar_t buf[3];
memset(buf,0,sizeof(buf));
int len=wcslen(ch);
wsprintf(buf,_T("%d"),len);
MessageBox(buf);//这里输出4 不应该是8吗?
if(!WriteFile(hFile,ch,len*2,&WordNum,NULL))//不*2的话只能显示两个字符
FlushFileBuffers(hFile);
CloseHandle(hFile);
读取也有同样的问题
HANDLE hFile;
hFile=CreateFile(TEXT("5.txt"), GENERIC_READ,0,NULL,OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
OutputDebugString(_T("Open fail!\r\n"));
}
wchar_t ch[100];
memset(ch,0,sizeof(ch));
DWORD WordNum;
if(ReadFile(hFile,ch,wcslen(ch),&WordNum,NULL))//wcslen不是应该返回8吗?
MessageBox(ch);//显示不出
CloseHandle(hFile);
求解~