VC++下文件内容及文件名的一些操作

VC++下文件内容及文件名的一些操作
1.根据文件名全路径,取得文件后辍名

  1. /**
  2. * 取得文件后辍名
  3. */
  4. CString CMyFun::GetFileExtNameFromFullPath(CString lpszFullPath)
  5. {
  6.         // 同理,获取文件后缀名则为:
  7.         CString m_strOriFileName = lpszFullPath;
  8.         m_strOriFileName.Replace(_T(“\”), _T(“\/”));
  9.         CString strFileType;
  10.         int ipos = m_strOriFileName.ReverseFind(‘.’);
  11.         if (ipos == -1) {
  12.                 strFileType = _T(“”);
  13.         }
  14.         else
  15.         {
  16.                 int n = m_strOriFileName.GetLength() – ipos – 1;
  17.                 strFileType = m_strOriFileName.Right(n);
  18.         }
  19.         return strFileType;
  20. }

复制代码

2.判断文件是否存在

  1. //判断文件是否存在
  2. BOOL CMyFun::FileExist(CString FileName)
  3. {
  4.         CFileFind fFind;
  5.         return fFind.FindFile(FileName);
  6. }

复制代码

3.取得文件名(全名)

  1. /**
  2. * 取得文件名(全名)
  3. */
  4. CString CMyFun::GetFileFullNameFromFullPath(CString lpszFullPath)
  5. {
  6.         ASSERT(!lpszFullPath.IsEmpty());
  7.         // 获取文件名:
  8.         CString m_strOriFileName = lpszFullPath;
  9.         //m_strOriFileName.Replace(_T(“\”), _T(“/”));
  10.         CString strPath;
  11.         int n = m_strOriFileName.GetLength() – m_strOriFileName.ReverseFind(‘\\’) – 1;
  12.         strPath = m_strOriFileName.Right(n);
  13.         return strPath;
  14. }

复制代码

4.取得文件名(不包含后辍)

  1. /**
  2. * 取得文件名
  3. */
  4. CString CMyFun::GetFileNameFromFullPath(CString lpszFullPath)
  5. {
  6.         ASSERT(!lpszFullPath.IsEmpty());
  7.         // 获取文件名:
  8.         CString m_strOriFileName = lpszFullPath;
  9.         //m_strOriFileName.Replace(_T(“\”), _T(“/”));
  10.         CString strPath;
  11.         int n = m_strOriFileName.GetLength() – m_strOriFileName.ReverseFind(‘\\’) – 1;
  12.         strPath = m_strOriFileName.Right(n);
  13.         //分解文件名
  14.         int ipos = strPath.Find(‘.’);
  15.         CString strtmp = strPath.Left(ipos);
  16.         return strtmp;
  17. }

复制代码

5.追加写入文件内容(追加到文件尾)

  1. //追加写入文件内容(追加到文件尾)
  2. void CMyFun::File_AppendLineToFile(CString filepath, CString strLineContent)
  3. {
  4.         CFile   fileDst;
  5.         fileDst.Open(filepath, CFile::modeCreate | CFile::modeWrite | CFile::modeNoTruncate);
  6.         //保存数据
  7.         fileDst.SeekToEnd();
  8.         strLineContent += _T(“\r\n”);
  9.         fileDst.Write(strLineContent, strLineContent.GetLength());
  10.         //————-
  11.         fileDst.Close();//
  12. }

复制代码

6.写入内容到文件中(覆盖写入)

  1. //写入内容到文件中(覆盖写入)
  2. void CMyFun::File_WriteToFile(CString filepath, CString strContent)
  3. {
  4.         CFile   fileDst;
  5.         fileDst.Open(filepath, CFile::modeCreate | CFile::modeWrite | CFile::modeNoTruncate);
  6.         fileDst.Write(strContent, strContent.GetLength());
  7.         fileDst.Close();
  8. }

复制代码

7.清空文本文件内容

  1. //清空文本文件内容
  2. void  CMyFun::File_NullFile(CString strFilePath)
  3. {
  4.         FILE* file;
  5.         fopen_s(&file, strFilePath, “wb+”);
  6.         fclose(file);
  7. }

复制代码

8.读取文本内容(按行读取)unicode环境下读取ansi文本中文乱码

  1. //读取文本内容(按行读取)unicode环境下读取ansi文本中文乱码
  2. CString CMyFun::File_ReadAllLine(CString filepath)
  3. {
  4.         CStdioFile file;
  5.         //打开文件
  6.         if (!file.Open(filepath, CFile::modeRead))
  7.         {
  8.                 AfxMessageBox(_T(“文件打开失败。”));
  9.                 return _T(“”);
  10.         }
  11.         CString strContent;
  12.         CString strText = _T(“”);
  13.         while (file.ReadString(strText))
  14.         {
  15.                 //写入
  16.                 strText += _T(“\r\n”);
  17.                 strContent += strText;//——-注释部分,全部一起保存
  18.         }
  19.         //关闭文件
  20.         file.Close();
  21.         //
  22.         return strContent;
  23. }

复制代码

9.从文件中读取数据到CStrngArray中

  1. //从文件中读取数据到CStrngArray中
  2. void CMyFun::File_ReadToCStringArray(CString filepath, CStringArray& dest)
  3. {
  4.         CStdioFile file;
  5.         //打开文件
  6.         if (!file.Open(filepath, CFile::modeRead))
  7.         {
  8.                 AfxMessageBox(_T(“文件打开失败。”));
  9.                 return;
  10.         }
  11.         CString strContent;
  12.         CString strText = _T(“”);
  13.         while (file.ReadString(strText))
  14.         {
  15.                 //写入
  16.                 if (strText != _T(“”))
  17.                 {
  18.                         //声明标识符
  19.                         //USES_CONVERSION;
  20.                         //char* p = T2A(strText);//
  21.                         dest.Add(strText);
  22.                 }
  23.         }
  24.         //关闭文件
  25.         file.Close();
  26. }

复制代码

10.将CStringArray中数据保存到file中

  1. //将CStringArray中数据保存到file中
  2. void CMyFun::File_SaveCStringArrayToFile(CString filepath, CStringArray &slist)
  3. {
  4.         CFile   fileDst;
  5.         fileDst.Open(filepath, CFile::modeCreate | CFile::modeWrite | CFile::modeNoTruncate);
  6.         CString strContent = _T(“”);
  7.         if (slist.GetCount() > 0) {
  8.                 for (int i = 0; i < slist.GetCount(); i++) {
  9.                         CString temp = slist.GetAt(i);
  10.                         strContent += temp + _T(“\r\n”);
  11.                 }
  12.         }
  13.         fileDst.Write(strContent, strContent.GetLength());
  14.         fileDst.Close();
  15. }

复制代码

下载说明:
1.本站资源都是白菜价出售,同样的东西,我们不卖几百,也不卖几十,甚至才卖几块钱,一个永久会员能下载全站100%源码了,所以单独购买也好,会员也好均不提供相关技术服务。
2.如果源码下载地址失效请联系站长QQ进行补发。
3.本站所有资源仅用于学习及研究使用,请必须在24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担。资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您权益请联系本站删除!
4.本站站内提供的所有可下载资源(软件等等)本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发);但本网站不能保证资源的准确性、安全性和完整性,由于源码具有复制性,一经售出,概不退换。用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug;同时本站用户必须明白,【188资源网】对提供下载的软件等不拥有任何权利(本站原创和特约原创作者除外),其版权归该资源的合法拥有者所有。
5.请您认真阅读上述内容,购买即以为着您同意上述内容。
188资源网 » VC++下文件内容及文件名的一些操作

提供最优质的资源集合

立即查看 了解详情