考虑:
private void cmdOpenPDF_DoubleClick(object sender, EventArgs e)
{
string path1 = @"Z:\Google Docs\Documents";
string path2 = docIDTextBox.Text;
string path3 = ".pdf";
Path.Combine(path1,path2,path3);
System.Diagnostics.Process.Start(Path.Combine(path1, path2, path3));
}我试图使用上面的代码打开Z:驱动器上的PDF文件,这是一个虚拟驱动器。
当我尝试这样做时,我会得到以下信息:
未处理win32异常: 系统找不到指定的文件。
我不知道这意味着什么,也不知道我的代码=/有什么问题。路径是有效的,我可以在不使用文本框的情况下打开它。
发布于 2011-04-21 03:42:19
如果path2只是一个没有扩展名的文件名,您可以使用:
Path.Combine(path1, path2 + path3)发布于 2011-04-21 03:34:18
Path.Combine用于将多个文件夹组合成一个路径。
因此,您的代码创建路径Z:\Google Docs\Documents\something\.pdf,这不是您想要的。
您应该通过调用Path.ChangeExtension (如果您想从文本框中删除任何扩展名)或简单地连接字符串来添加扩展。
发布于 2011-04-21 03:43:35
检查http://coolthingoftheday.blogspot.com/2008/02/pathcombine-be-aware-of-slash-in-second.html并正确初始化三个变量。尽管Path.Combine不是您的最佳选择,但它仍然适用于您。
https://stackoverflow.com/questions/5739192
复制相似问题