【问题标题】:Cannot create an xml file in visual studio无法在 Visual Studio 中创建 xml 文件
【发布时间】:2021-05-23 11:22:34
【问题描述】:

我正在尝试从现有的 csv 文件创建 XML 文件。 我检查了xml的内容,当我在调试控制台中记录结果时创建成功。

我打算将文件导出为一个名为的 xml 文件

输出.xml

我写的代码如下

//Export TO XML
            string[] file = File.ReadAllLines(filePath);
            string xml = "";
            XElement top = new XElement("WoodStock",
                                        from items in file
                                        let columns = items.Split(',')
                                        select new XElement("Item", new XElement("Code", columns[0]),
                                                                    new XElement("Description", columns[1]),
                                                                    new XElement("Count", columns[2]),
                                                                    new XElement("Order", columns[3]))
                                       );

            System.Console.WriteLine(top);

            File.WriteAllText("output.xml", xml + top.ToString());

我需要使用相对文件路径,因为作业也将在导师的计算机上运行。我打算将它放在与原始 csv 文件相同的文件夹下。 csv文件的相对路径是

var filePath = "stocklist.csv";

不幸的是,在我运行我的程序后,我无法按预期找到 xml 文件。如何解决这个问题?提前致谢。

【问题讨论】:

  • 您是否检查过文件系统而不是检查 Visual Studio 中的文件列表?
  • 默认写入位置与 VS bin 文件夹中的 c# 可执行文件位于同一目录中。您可以包含 xml 文件的完整路径名,以便它始终位于相同的位置。

标签: c# xml visual-studio relative-path


【解决方案1】:

VS 有问题,不总是刷新文件,所以可能是这样。

  1. 尝试退出并打开VS
  2. 尝试手动创建文件,终端:touch filename.xml

【讨论】:

  • 您是 100% 正确的,由于某种原因,VS 在文件处理方面非常有问题。预期的文件已创建,但未出现在资源管理器窗口中;相反,如果我手动打开文件夹,我可以看到该文件。
【解决方案2】:
var filePath = Path.Combine(Directory.GetCurrentDirectory(), "stocklist.csv");

将从您启动应用的目录中读取您的文件。写作也一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-14
    • 2021-07-10
    • 1970-01-01
    • 2011-05-07
    • 1970-01-01
    • 2019-06-06
    • 2011-12-17
    • 1970-01-01
    相关资源
    最近更新 更多