文件操作的四种方法

时间:2020-12-08 08:15:45

第一种方法:C语言

void CMFCApplication1Dlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
CString s = TEXT("*********************C*********************\r\n");
char line[256];
FILE *pFile = fopen("codes.txt", "r");
while (fgets(line, 256, pFile)){
s += line;
s += TEXT("\r\n");
}
fclose(pFile);
SetDlgItemText(IDC_EDIT1, s);
}

第二种方法:C++ 语言

void CMFCApplication1Dlg::OnBnClickedButton4()
{
// TODO: 在此添加控件通知处理程序代码
CString s = TEXT("\r\n*****************C++********************\r\n");
char line[256];
std::ifstream ifs("codes.txt");
while (ifs.getline(line, 256))
{
s += line;
s += "\r\n";
}
ifs.close();
SetDlgItemText(IDC_EDIT1, s);
}


第三种方法:API函数

void CMFCApplication1Dlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知处理程序代码
CString s = TEXT("***************API****************\r\n");
HANDLE hFile;
DWORD dwReadSize;
CHAR lpFileDateBuffer[4096];
ZeroMemory(lpFileDateBuffer, 4096);
hFile = CreateFile(TEXT("codes.txt"),
GENERIC_READ,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
ReadFile(hFile, lpFileDateBuffer, 4096, &dwReadSize, NULL);
CloseHandle(hFile);
s += lpFileDateBuffer;
SetDlgItemText(IDC_EDIT1, s);
}

第四种方法:MFC

void CMFCApplication1Dlg::OnBnClickedButton5()
{
// TODO: 在此添加控件通知处理程序代码
CString s = TEXT("*******************MFC******************\r\n");
CString line;
//标准输入输出文件对象
CStdioFile file(TEXT("codes.txt"), CFile::modeRead);
while (file.ReadString(line)){
s += line;
s += "\r\n";
}
SetDlgItemText(IDC_EDIT1, s);
}

CLEAR:

void CMFCApplication1Dlg::OnBnClickedButton6()
{
// TODO: 在此添加控件通知处理程序代码
SetDlgItemText(IDC_EDIT1, TEXT(" "));
}

运行效果预览

文件操作的四种方法



点击按钮C++:

文件操作的四种方法