Suche…


Erstellen Sie eine Datei und schreiben Sie in diese

In diesem Beispiel wird eine neue Datei mit dem Namen "NewFile.txt" erstellt und anschließend "Hello World!" zu seinem Körper. Wenn die Datei bereits vorhanden ist, CreateFile fehl und es werden keine Daten geschrieben. Siehe den Parameter dwCreationDisposition in der CreateFile-Dokumentation, wenn die Funktion nicht fehlschlagen soll, wenn die Datei bereits vorhanden ist.

#include <Windows.h>
#include <string>

int main()
{
   // Open a handle to the file
   HANDLE hFile = CreateFile(
      L"C:\\NewFile.txt",     // Filename
      GENERIC_WRITE,          // Desired access
      FILE_SHARE_READ,        // Share mode
      NULL,                   // Security attributes
      CREATE_NEW,             // Creates a new file, only if it doesn't already exist
      FILE_ATTRIBUTE_NORMAL,  // Flags and attributes
      NULL);                  // Template file handle

   if (hFile == INVALID_HANDLE_VALUE)
   {
      // Failed to open/create file
      return 2;
   }

   // Write data to the file
   std::string strText = "Hello World!"; // For C use LPSTR (char*) or LPWSTR (wchar_t*)
   DWORD bytesWritten;
   WriteFile(
      hFile,            // Handle to the file
      strText.c_str(),  // Buffer to write
      strText.size(),   // Buffer size
      &bytesWritten,    // Bytes written
      nullptr);         // Overlapped

   // Close the handle once we don't need it.
   CloseHandle(hFile);
}

API-Referenz:



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow