假设我有一个二进制代码,代码是ae/a/b/C/xyz.exe文件它期望/a/b/c/你好.txt在同一个目录中。我怎样才能得到/a/b/c/你好.txt在完全路径上?在
在python中,我可以用os.path.abspath(sys.argv[0])
获取正在运行的程序的路径,使用dirname()可以获得目录信息,还可以使用join()来获得新的完整路径。在
import sys
from os.path import *
newName = join(dirname(abspath(sys.arg[0]), "hello.txt")
C怎么能做同样的事情?在
您可以使用Environment.CurrentDirectory、Environment.GetCommandLineArgs和{a3}中的类执行相同的操作。您的代码将转换为:
但是,如果当前目录在调用之前已更改,则此操作将失败。(在python中也是这样…)最好使用以下方法:
^{pr2}$使用
Application.StartupPath
参见:http://msdn.microsoft.com/en-us/library/system.windows.forms.application.startuppath(v=vs.71).aspx
如果程序启动后更改了当前目录,则获取当前目录将失败。在
相关问题 更多 >
编程相关推荐