2013-02-09 63 views
2

我正在创建一个Xml文件,并且我想将其保存在解决方案的指定文件夹内,我可以在解决方案资源管理器中访问它。在我的项目中的指定文件夹中保存文件

如何指定路径以便创建文件夹并将其保存在其中的xml文件?

由于此刻它在我的项目的根目录中创建了文件,我无法在解决方案资源管理器中查看它。

XmlSerializer serializer = new XmlSerializer(typeof(BoxSet)); 
TextWriter textWriter = new StreamWriter("../../Box.xml"); 

对不起,还是一个新手......我是否错过了什么。

+0

解决方案资源管理器中显示的内容是项目中包含的内容,并不一定显示所有文件。如果您为Web开发,则可以尝试使用Server.MapPath来访问所需的目录。 – reinder 2013-02-09 12:41:17

+0

参考这个线程,它有多个解决方案,http://stackoverflow.com/questions/816566/how-do-you-get-the-current-project-directory-from-c-sharp-code-when-creating -ac – 2013-02-09 12:44:26

+0

什么样的解决方案使用此xml文件?(winform或WPF或Asp.net) – 2013-02-09 12:46:53

回答

9

您可以在声明新的StreamWriter时指定路径。

TextWriter textWriter = new StreamWriter("../../Box.xml"); 

这归结为:

  • ../ - 转到上一级目录
  • ../ - 转到上一级目录
  • Box.xml文件在这里

所以,当你想要在根文件夹内的文件夹中创建的文件,你可以使用:

  • “../ FOLDERNAME /Box.xml”

但是,如果你不希望依赖于当前的文件位置,你也可以使用:

AppDomain.CurrentDomain.BaseDirectory 

那倒使:

var path = String.Format("{0}foldername\Box.xml", AppDomain.CurrentDomain.BaseDirectory); 
TextWriter textWriter = new StreamWriter(path); 

希望这会有所帮助。

相关问题