admin 发表于 2024-5-2 22:32:24

获得文件路径的几种方法

获得当前绝对路径的方法
在工程代码中加入如下代码即可获得当前绝对路径:

char szFileName;
GetModuleFileName(NULL, szFileName, MAX采用PATH);
CString strFileName = szFileName;
if ('//' !=szFileName)
{
    int nPos = strFileName.ReverseFind('//');
    if (nPos > 0)
    {
      szFileName = 0;
      strFileName = szFileName;
    }
}


取得CAD当前dwg路径:
方法一

struct resbuf dwgName, dwgPath;
CString strFilePath;
acedGetVar(采用T("DWGNAME"), &dwgName);
acedGetVar(采用T("DWGPREFIX"), &dwgPath);
strFilePath.Format(采用T("%s%s"), dwgPath.resval.rstring, dwgName.resval.rstring);

方法二

AcApDocument *pDoc = acDocManager->curDocument();
      CString file = pDoc->fileName();

方法三

const ACHAR * str = NULL;
    acdbHostApplicationServices()->workingDatabase()->getFilename(str);
    acutPrintf(采用T("/n我的方法取得的文件名字是:"));
    acutPrintf(str);

文件的大小。

   CFile file;
   BOOL ret1 = file.Open(str,CFile::modeRead);
   if(ret1)
   {
      CString str1;
      long vvv = file.GetLength();
      str1.Format(采用T("/n文件大小是:%ld"),vvv);
      str1 =str+str1;
      acutPrintf(采用T("文件名字是:")+str1);
      file.Close();
   }
页: [1]
查看完整版本: 获得文件路径的几种方法