我遇到了win32的问题。我必须使用 c++ 将一些动态数据写入 win32 中的文件。我知道如何将字符串写入文件的基础知识,但是我们如何将整数、浮点数等数据写入文件。
我有一个文件,我正在将数据复制到另一个新创建的文件中。我需要将整数、浮点数等数据写入顶部的这个文件。我知道我们可以通过
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);
}