CreateFile関数とWriteFile関数を利用してファイルへの書き込みを行います。
#include <stdio.h> #include <tchar.h> #include <iostream> #include <string> #include <locale.h> #include <windows.h> /* メイン */ int _tmain ( int argc , _TCHAR* argv[] ) { /* ロケールを日本に設定 これを設定するだけで、標準出力に日本語が表示される ようになります。 */ setlocale( LC_ALL, "Japanese" ); /* ファイルのオープン */ HANDLE hFile = ::CreateFile( L"c:¥¥test¥¥test_file_01.txt" , GENERIC_WRITE , 0 , NULL , CREATE_ALWAYS , FILE_ATTRIBUTE_NORMAL , NULL ); if ( INVALID_HANDLE_VALUE == hFile ) { std::wcout << L"ファイルオープン失敗( " << ::GetLastError() << L" )" << std::endl; } else { std::wcout << L"ファイルオープン成功" << std::endl; // 書き込んだバイト数を格納する領域 DWORD dwNumberOfWritten = 0; // 書き込み内容 std::string strTest = "この内容を書き込みます。"; std::cout << "書き込み内容 = " << strTest.c_str() << std::endl; // ファイルの書き込み if ( 0 == ::WriteFile( hFile, strTest.c_str(), strTest.size(), &dwNumberOfWritten, NULL ) ) { // ファイル読み込み失敗 std::wcout << L"ファイル読み込み失敗( " << ::GetLastError() << L" )" << std::endl; goto err; } std::wcout << L"書き込んだバイト数 = " << dwNumberOfWritten << std::endl; err: // ファイルクローズ ::CloseHandle( hFile ); } // 正常終了 return( 0 ); }
ファイルオープン成功 書き込み内容 = この内容を書き込みます。 書き込んだバイト数 = 24