我正在使用c#。在我的項目中我有一個xml文件夾,其中我有一個xml文件說「file.xml」.. 我想在我的項目中使用該文件。我想從當前項目本身取得該文件,因爲我將路徑設爲:使用c的相對路徑#
xmlDoc.Load(@"..\xml\file.xml");
但它沒有取出文件。 它顯示了一些「C:」路徑。 如何從項目本身檢索此文件。
我正在使用c#。在我的項目中我有一個xml文件夾,其中我有一個xml文件說「file.xml」.. 我想在我的項目中使用該文件。我想從當前項目本身取得該文件,因爲我將路徑設爲:使用c的相對路徑#
xmlDoc.Load(@"..\xml\file.xml");
但它沒有取出文件。 它顯示了一些「C:」路徑。 如何從項目本身檢索此文件。
您應該在解決方案資源管理器中的文件上設置Copy to Output Directory
屬性,以使用EXE將文件映射到該文件夾。
然後,您可以編寫
xmlDoc.Load(Path.Combine(typeof(MyClass).Assembly, "file.xml"));
它使用EXE文件的實際位置也不管當前目錄下的正常工作。
編輯:在ASP.Net,你應該把你的文件中App_Data
文件夾(這是不能公開訪問),然後寫
xmlDoc.Load(Server.MapPath("~/App_Data/file.xml"));
Path.Combine(typeof(MyClass).Assembly.Location.ToString(), "file.xml")
不起作用,因爲'Location.ToString()'包含MyClass.exe – 2014-01-26 14:04:32
在我的情況下,這種方法是行不通的,因爲Visual Studio項目包含文件是一個SQL數據庫項目。 – 2018-02-28 08:00:50