如何获得资源管理器中文件的完整路径? 如题,在开发环境中可以选择选择一个文件,然后看他的属性里能看到文件的完整路径,但是在代码中如何得到这个完整路径呢?请高人们指点下迷津~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 当你选择打一个文件的时候,你可以从OpenFileDialog里直接获取其完整路径及名称:比如:private void button1_Click(object sender, EventArgs e){ OpenFileDialog fd = new OpenFileDialog(); if (fd.ShowDialog(this) == DialogResult.OK) { Console.WriteLine(fd.FileName); }} OpenFileDialog.FileName本身就是一个完整路径的文件名. 不是要打开一个文件,是做个插件程序,获得项目中资源管理器中文件的路径~现在只知道可以通过下面的方法获得项目路径和具体的文件名,但是如果是在文件夹下面不好处理~ public Project GetSelectedProject() { Project project = null; //从被选中对象中获取工程对象 EnvDTE.SelectedItem item = applicationObject.SelectedItems.Item(1); if(item.Project != null) {//被选中的就是项目本身 project = item.Project; } else {//被选中的是项目下的子项 project = item.ProjectItem.ProjectItems.ContainingProject; } return project; } private string GetSelectedItemName() { EnvDTE.SelectedItem item = applicationObject.SelectedItems.Item(1); return item.Name; } /// <summary> /// ? 获取当前项目的所在目录 /// </summary> /// <returns></returns> private string GetSelectedProjectPath() { string path = ""; //获取被选中的工程 Project project = GetSelectedProject(); if(project != null) { //全名包括*.csproj这样的文件命 path = project.FullName; } //去掉工程的文件名 path = System.IO.Path.GetDirectoryName(path); return path; } 你是要取项目 启动时的路径?Application.StartupPath 不是WEB程序,简单的说吧,就是根据一个cs文件生成同另一个cs文件~ to:Red_angelX(八戒) 是可以单独做一个程序来根据模板文件 生成代码(cs文件),但不方便,所以做成插件的形式。现在基本上可以了,上面的路径问题,不想做离N次婚的女人——前(公)功尽弃! 获取当前项目的所在目录 private string GetSelectedProjectPath(){ string path = ""; //获取被选中的工程 Project project = GetSelectedProject(); if (project != null) { //全名包括*.csproj这样的文件命 path = project.FullName; } //去掉工程的文件名 path = Path.GetDirectoryName(path); return path;} 算是搞定了吧,可以先打开文件,然后根据selected item.document.filename可以直接取的路径。结帐 虽然是很久的贴了,但是我还是想说,楼主是要在资源管理器中,listview控件中点击一个文件夹后要获取该文件夹的绝对路径。 讨论的对我也有点帮助。顶一下 呵呵,搞笑。所有人都没理解楼主到底要的什么,至于楼主最后的解决办法也有点晕!正确的方式是SelectedItems.Item(1).ProjectItem.Properties.Item["Path"].Value.ToString();是不是Path这个项记不清了,有兴趣自己从1到N遍历出来看吧。 如何在winform应用程序中播放flash文件? C#如何获得滚动条所对应的文本的位置 在做聊天服务端时碰见一问题,请大神们帮帮忙。 Winform下如何访问远程数据库? VS2005做的类库在VS2003中用不了,请指教! xml读取问题 mm现在装不上visual studio.net2003?怎么作啊? 请教几个关于日志存储的问题 winform项目的发布需要什么文件? --==-====托普录取通知书===--=-=-=- 请教关于RichTextBox的Font问题 c# 添加数据到数据库怎么写呀 sql语句
{
OpenFileDialog fd = new OpenFileDialog();
if (fd.ShowDialog(this) == DialogResult.OK)
{
Console.WriteLine(fd.FileName);
}
}
现在只知道可以通过下面的方法获得项目路径和具体的文件名,但是如果是在文件夹下面不好处理~
public Project GetSelectedProject()
{
Project project = null;
//从被选中对象中获取工程对象
EnvDTE.SelectedItem item = applicationObject.SelectedItems.Item(1);
if(item.Project != null)
{//被选中的就是项目本身
project = item.Project;
}
else
{//被选中的是项目下的子项
project = item.ProjectItem.ProjectItems.ContainingProject;
}
return project;
}
private string GetSelectedItemName()
{
EnvDTE.SelectedItem item = applicationObject.SelectedItems.Item(1);
return item.Name;
}
/// <summary>
/// ? 获取当前项目的所在目录
/// </summary>
/// <returns></returns>
private string GetSelectedProjectPath()
{
string path = "";
//获取被选中的工程
Project project = GetSelectedProject();
if(project != null)
{
//全名包括*.csproj这样的文件命
path = project.FullName;
}
//去掉工程的文件名
path = System.IO.Path.GetDirectoryName(path);
return path;
}
Application.StartupPath
{
string path = ""; //获取被选中的工程
Project project = GetSelectedProject(); if (project != null)
{
//全名包括*.csproj这样的文件命
path = project.FullName;
} //去掉工程的文件名
path = Path.GetDirectoryName(path); return path;
}
顶一下
所有人都没理解楼主到底要的什么,至于楼主最后的解决办法也有点晕!正确的方式是
SelectedItems.Item(1).ProjectItem.Properties.Item["Path"].Value.ToString();是不是Path这个项记不清了,有兴趣自己从1到N遍历出来看吧。