c語(yǔ)言程序設(shè)計(jì)文件操作方法示例(CreateFile和fopen)
實(shí)例:
(1)第一種方法CreateFile
#include "stdafx.h"
#include <windows.h>
void main(int argc, char* argv[])
{
HANDLE hDevice = CreateFile("C://S.txt",
GENERIC_READ|GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (hDevice == INVALID_HANDLE_VALUE)
{
printf("Failed to obtain file with %d error code !/n",GetLastError());
return;
}
DWORD dwSize = GetFileSize(hDevice,NULL);
printf("%d /n",dwSize);
char chBuffer[10] = "5469";
DWORD dwWriteSize = 0;
BOOL bRet = WriteFile(hDevice,chBuffer,4,&dwWriteSize,NULL);
if(bRet)
{
printf("write file success /n");
}
FlushFileBuffers(hDevice); //將緩沖區(qū)數(shù)據(jù)寫(xiě)入磁盤(pán)
LONG IDistance = 0;
DWORD dwPtr = SetFilePointer(hDevice,IDistance,NULL,FILE_BEGIN); //調(diào)整文件指針到文件開(kāi)頭
DWORD dwReadSize = 0;
bRet = ReadFile(hDevice,chBuffer,10,&dwReadSize,NULL);
if (bRet)
{
printf("chbuffer is %s /n",chBuffer);
}
CloseHandle(hDevice);
return ;
}
(2)第二種方法流文件操作FILE
char datain[101];
FILE *fp_sys;
fp_sys = fopen("要打開(kāi)的文件名", "rb"); //第二個(gè)參數(shù)為打開(kāi)方法,r代表讀,b代表二進(jìn)制方式
if(fp_sys == NULL) {
AfxMessageBox("無(wú)法打開(kāi)充值卡文件");
相關(guān)文章
C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的掃雷游戲
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的掃雷游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12
詳解如何利用C++實(shí)現(xiàn)Mystring類
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)MyString的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08
C++實(shí)現(xiàn)LeetCode(90.子集合之二)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(90.子集合之二),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
C語(yǔ)言執(zhí)行程序時(shí)遇到的常見(jiàn)問(wèn)題及解決
這篇文章主要介紹了C語(yǔ)言執(zhí)行程序時(shí)遇到的常見(jiàn)問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
C語(yǔ)言 動(dòng)態(tài)內(nèi)存分配詳解
這篇文章主要介紹了C語(yǔ)言 動(dòng)態(tài)內(nèi)存分配詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06

