【问题标题】:How to create a text file using cmd in c#?如何在 C# 中使用 cmd 创建文本文件?
【发布时间】:2017-09-12 11:59:58
【问题描述】:

我想创建一个包含文件夹中所有文件名的文本文件。 所以我是这样的:

Process getNamesProcess = new Process();
getNamesProcess.StartInfo.FileName = @"c:\**my folder path**";
getNamesProcess.StartInfo.Arguments = "dir /b >> names.txt";
getNamesProcess.Start();

但是这对我不起作用。该过程为我打开了一个文件夹,仅此而已。我应该改变什么?

【问题讨论】:

  • 注意:“>>”将附加到现有文件;可能不是你想要的。 ">" 将截断现有文件。

标签: c# cmd command arguments


【解决方案1】:

我不知道您希望通过在StartInfo.FileName 中放置文件夹路径来实现什么,但您需要在其中放置cmd.exe 的完整路径。

然后,在StartInfo.Arguments 中你需要输入"/C dir /b " + my_folder_path + " >> names.txt"

要了解/C 的作用,请打开命令提示符并输入help cmd

【讨论】:

    【解决方案2】:

    更好的方法是:

    File.WriteAllLines("names.txt", Directory.GetFiles("c:\\path").Select(Path.GetFileName)); 
    

    FileDirectoryPath 类位于 System.IO 命名空间中。

    【讨论】:

    • 感谢您的回答,这会为我创建一个包含文件完整路径的文件,而不仅仅是名称
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-10
    • 2010-11-04
    • 2015-03-05
    • 2014-04-21
    相关资源
    最近更新 更多