代码之家  ›  专栏  ›  技术社区  ›  mscccc Jonas Schubert Erlandsson

如何使用vb.net中的相对路径加载XML文档?

  •  1
  • mscccc Jonas Schubert Erlandsson  · 技术社区  · 16 年前

    在vb.net中,当使用system.xml.xmldocument加载XML文档时,是否可以指定文件的相对路径?

    path = "file.xml"
    xmld.Load(path)
    

    我尝试加载的XML文档与VB类位于同一目录中。但是,如果不使用XML文档的完整路径,就无法访问它。

    3 回复  |  直到 12 年前
        1
  •  2
  •   Chris    16 年前

    只导入System.xml并尝试…

    Dim xmlDoc As XmlDocument = New XmlDocument
     xmlDoc.Load(Server.MapPath("Divide.xml"))
    

    Divide.xml显然将替换为XML文件的名称。
    在msdn中,server.mappath如下所示。

    指定相对路径或虚拟路径 映射到物理目录。如果 路径以正向(/)开头 或反斜杠(),映射路径 方法返回路径,就好像路径是 完整的虚拟路径。如果路径不 从斜线开始,映射路径 方法返回相对于 .asp文件的目录 处理。

        2
  •  0
  •   Dillie-O    16 年前
    Application.StartupPath()
    

    将指向应用程序的执行位置。如果XML文件的最终生成位置将位于与此不同的目录中,我建议创建一个小的文件管理器类,该类将指向文件的正确位置。这样你就可以简单地打电话给:

    xmlDoc.Load(myFileMan.FilePath())
    

    并让管理者基于调试/发布构建和任何其他潜在的缓解因素来解决正确的路径。

        3
  •  0
  •   Morphinebeats    12 年前

    如果在SSIS中,请尝试以下操作:

    'Loading an Xml File from VB'
    
     Dim xmlDoc As XmlDocument = New XmlDocument
     xmlDoc.Load("C:\Test\sample.xml")