使用相对路径在Visual Studio中使用c#打开excel文件

时间:2018-03-21 19:49:52

标签: c# visual-studio-2017

我似乎在使用visual studio中的相对路径打开excel文件时遇到问题。该文件正保存到:

C:\Users\UserName\Documents\Filename.xls

在任何机器上。我尝试过使用:

Process.Start(@"~\Documents\Filename.xls");

打开excel文件,但是它会抛出错误,指出无法找到文件位置。有什么我做错了吗?提前谢谢。

3 个答案:

答案 0 :(得分:3)

'〜'字符在Linux中使用。

使用以下代码,您可以获取特殊文件夹的路径:

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) 

MyDocuments可以替换为其他Windows特定文件夹,如:

  • 用户配置
  • MyPictures
  • 桌面

答案 1 :(得分:0)

'〜'在Windows中不是有效的路径标识符(它确实引用* nix上的主目录)。我不确定你想要实现什么,但也许你想要SpecialFolder see description here at MSDN

var path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

将返回:C:\ Users \' UserName' \ Documents \

答案 2 :(得分:0)

您可以使用combine来获取完整路径

var folderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
var fullPath.Combine(folderPath, "filename.xls");
Process.Start(fullPath);

如果您知道工作文件夹的相对路径,请使用

var fullPath = Path.GetFullPath(relPath);