我遇到了win32問題。我必須使用C++在win32中將一些動態數據寫入文件。我知道如何將字符串寫入文件的基本知識,但是我們如何寫入ints,float等數據到文件中。將動態數據寫入win32文件
我有一個文件,我將數據複製到另一個新創建的文件。我需要將ints,float等數據寫入該文件的頂部。 我知道我們可以通過
char buff[] = "hello";
添加數據並複製此到文件,我不知道我怎麼能與不同類型的數據類型做到這一點。任何幫助?
char buf[] = "hello"; //Null terminate
LPVOID lpMsgBuf;
DWORD byteWritten = 0;
HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
BOOL ReadFileReturn;
HANDLE hFile = CreateFile("MYFILE.blo", // open MYFILE.blo
GENERIC_WRITE | GENERIC_READ,
FILE_SHARE_READ, // share for reading
NULL, // no security
OPEN_EXISTING, // existing file only
FILE_ATTRIBUTE_NORMAL, // normal file
NULL); // no attr
ReadFileReturn = ReadFile(hFile,buf,30,&byteWritten,NULL);
if(ReadFileReturn)
{
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
NULL,
GetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
(LPTSTR) &lpMsgBuf,
0,
NULL);
WriteFile(hStdOut,buf,sizeof buf,NULL,NULL);
}
else
{
WriteFile(hStdOut,"It Failed",sizeof "It Failed",NULL,NULL);
}
下面關於如何存儲數據似乎存在一些混淆。你能舉一個例子說明你正在給一個文件寫一個字符串的機制是什麼? – 2013-04-10 07:23:23