c语言如何获得文件当前路径?

c语言如何获得文件当前路径?,第1张

http://hi.baidu.com/andywangcn/item/7633efda5517baf9ca0c39c6

获得双斜杠路径不包含文件

TCHAR _szPath[MAX_PATH + 1]={0}

GetModuleFileName(NULL, _szPath, MAX_PATH)

(_tcsrchr(_szPath, _T('\\')))[1] = 0//删除文件名,只获得路径 字串

CString strPath

for (int n=0_szPath[n]n++)

{

if (_szPath[n]!=_T('\\'))

{

strPath +=_szPath[n]

}

else

{

strPath += _T("\\\\")

}

}

MessageBox(strPath)//输出==e:\\program\\Debug\\

//头文件用到 windows.h

int main()

{

string s = "c:\\abc\\def\\text.txt"

int xie_index = s.find_last_of('\\') // 路径中最后一个\的位置

string file_dirname = s.substr(0, xie_index + 1)

string file_basename = s.substr(xie_index + 1, s.size())

cout <<file_dirname <<endl <<file_basename <<endl

}

关于通过 C 语言编程获取到某个文件的完整路径、以及文件名称的问题,那是毫无疑问可以做到的。

但是具体的编程我由于已经好多年没有编写 C 语言程序了。故具体的程序调试过程需要你自己进行完成了。关于这部分的问题,我记得 C 语言库函数大全上面肯定是有的,你可以参考有关 C 语言库函数的教材。

但是注意一点就是:如果是在 WINDOWS 系统下面的编程,那么路径名必须使用双斜线,即:\\ 才行。例如:若想表示打开驱动器 D 上的 MY_SUBDIR 子目录下面的 MYFILE.TXT 文件,则在 C 语言源程序中要写为如下代码:

#include <stdio.h>

void main( )

{

FILE * fpr

fpr = fopen("D:\\MY_SUBDIR\\MYFILE.TXT", "r") /* 这样写才是正确的语句。*/

......

fclose(fpr)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12005325.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存