帮我解释一下下面这行语句的作用吗?
我知道是获取当前程序集的路径,但是后面CodeBase.Substring(8)这是做什么的就不太了解了System.Reflection.Assembly.GetExecutingAssembly().CodeBase.Substring(8);谢谢了!!!
我知道是获取当前程序集的路径,但是后面CodeBase.Substring(8)这是做什么的就不太了解了System.Reflection.Assembly.GetExecutingAssembly().CodeBase.Substring(8);谢谢了!!!
System.Reflection.Assembly.GetExecutingAssembly().CodeBase;
的意思就是取得运行中的程序名字和路径
但前面有file:///重要的格式
file:///D:/Project/bin/Debug/WindowsApplication.EXE
System.Reflection.Assembly.GetExecutingAssembly().CodeBase.Substring(8);
的意思就是从第8位开始取得字符串
D:/Project/bin/Debug/WindowsApplication.EXE
这样也可以,可能比较直观点
string str = Assembly.GetExecutingAssembly().GetName().CodeBase;
if (str.ToLower().IndexOf("file:///") >= 0)
{
str = str.Substring(8, str.Length - 8);
}
string path = System.IO.Path.GetDirectoryName(str);