CFile testFile;
testFile.Open( "text.txt ", CFile::modeWrite |CFile::shareDenyNone|CFile::modeCreate);
此时只可保存为text.txt,怎样使文件可保存名可变,
1用户自己输入
2以时间日期保存
3其他方法
那位高手可以回答一下?
testFile.Open( "text.txt ", CFile::modeWrite |CFile::shareDenyNone|CFile::modeCreate);
此时只可保存为text.txt,怎样使文件可保存名可变,
1用户自己输入
2以时间日期保存
3其他方法
那位高手可以回答一下?
详细用法,Google 搜索一下。
CString strFile = _T("text.txt");
testFile.Open( strFile , CFile::modeWrite ¦CFile::shareDenyNone ¦CFile::modeCreate);
以时间日期作为文件名可以用CTime类,GetCurrentTime、Format函数。
testFile.Open( "text.txt ", CFile::modeWrite |CFile::shareDenyNone|CFile::modeCreate); //保存数据到缓存
char szTest[100] = {0};
int nLength = ((CEdit*)GetDlgItem(IDC_EDIT1))-> GetWindowText(szTest, 100); //将缓存中数据写入文件
testFile.Write(szTest, nLength); //关闭文件
testFile.Close();
这就是保存
然后就在项目文件夹内生成text.txt
当时我现在想让文件名可变
因为用一个文件名就会讲上次生成的覆盖
大家可以讲得详细一点吗?
谢谢
CString strFileName;
strFileName.Format("test%d.txt", nSaveCount++); CFile testFile;
testFile.Open( strFileName, CFile::modeWrite ¦CFile::shareDenyNone ¦CFile::modeCreate); //保存数据到缓存
char szTest[100] = {0};
int nLength = ((CEdit*)GetDlgItem(IDC_EDIT1))-> GetWindowText(szTest, 100); //将缓存中数据写入文件
testFile.Write(szTest, nLength); //关闭文件
testFile.Close();
你可以用CopyFile先把文件复制一份(当然要给一个新的文件名),然后打开那个新复制的文件来修改。
strFile.Format("t%d.txt", (UINT)time(0));
testFile.Open( strFile , CFile::modeWrite ¦CFile::shareDenyNone ¦CFile::modeCreate);
参数中加上你需要保存的扩展类型
file.Open("c:\\文件名.txt",CFile::modeCreate | CFile::modeNoTruncate | CFile::modeWrite );
file.SeekToEnd();
file.Write(&databuff[i],sizeof(databuff));
file.Close();
CFile::modeNoTruncate用于判断是否有此文件,如果有则不覆盖。
2.时间
CString strFile;
strFile.Format("t%d.txt", (UINT)time(0));
testFile.Open( strFile , CFile::modeWrite ¦CFile::shareDenyNone ¦CFile::modeCreate);
3. 就楼上的 直接写在文件后面