我有一个名为 Myproject.Application.DataExporter 的项目。我正在将文件保存到名称为导出的目录中。我正在使用此代码:
workbook.Save(@"D:\workspace\MyApp\Myproject.Application.DataExporter\Export\Calc.xlsx");
我看到如何在Stackoverflow中获取当前项目目录。有这个代码:
Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName;
我想使用上面代码之类的通用路径将文件保存在导出目录下。它提供当前项目目录。我想用它来将文件添加到导出目录。如何在我的项目中使用它来向Export添加文件?感谢。
答案 0 :(得分:1)
string dir = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName;
string path = Path.Combine(dir, "Myproject.Application.DataExporter", "Export");
string file = "Calc.xlsx";
workbook.Save(Path.Combine(path, file));
或者如果您想跳过Myproject.Application.DataExporter
string dir = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName;
string path = Path.Combine(dir, "Export");
string file = "Calc.xlsx";
workbook.Save(Path.Combine(path, file));
答案 1 :(得分:1)
根据之前的其他评论,您需要澄清您的问题。我假设您想要获取当前目录,然后将文件保存到该目录,以便路径相对于您托管应用程序的位置?
你可以这样做:
workbook.Save(Path.Combine(Environment.CurrentDirectory, "Calc.xlsx");
要获取相对于当前工作目录的路径,请参阅此处: Getting path relative to the current working directory?
修改强> 不能评论为没有足够的声誉。 当你执行Directory.GetCurrentDirectory()时返回的值是什么?
如果Directory.GetParent(Directory.GetCurrentDirectory())。Parent.FullName返回"导出"文件夹路径你可以这样做:
string fileName = "Calc.xlsx";
workbook.Save(Path.Combine(Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName, fileName );