【问题标题】:How to check for number of folders that start with the same word如何检查以相同单词开头的文件夹数量
【发布时间】:2015-04-06 10:17:12
【问题描述】:

我正在尝试创建一个带有按钮的 Windows 窗体应用程序,如果单击它,它将能够在文件夹中搜索(我将在程序代码中指定目录 - 为了这个示例,目录将被称为 "C:\#" -) 以我们选择的文本开头的文本文件的数量(再次在程序代码中指定 - 就本示例而言,文件将以 "HelloWorld" 开头 - )。

有谁知道如何实现一段代码,可以统计指定目录中以我们选择的字符开头的文件数。

您的帮助将不胜感激!

【问题讨论】:

  • 可以添加代码示例吗?
  • 如果您提供当前尝试,您将获得更快的答案。就像现在一样......我们应该从零开始编写程序,当有一个现有的要修复时它是无用的。另请参阅help center
  • 我觉得下一次,你不应该浪费时间写你的作业,只要把它的链接。
  • The documentation 本身包含了如何做到这一点的半个例子......你尝试/研究了什么?
  • 一个小提示(我知道它会被忽略):编写程序不是谷歌代码sn-ps(因为它不是在这里要求准备好的代码在堆栈溢出上)。坐下来,想一想,让我们试着用你有的工具来写(C# 和 BCL,他们的文档很不错)。如果您必须搜索文件,“我通过 google 找到的是创建一个文本文件” 有什么意义?当你需要买鞋的时候,你会在黄页上找车店吗???

标签: c# winforms file directory


【解决方案1】:

1) 将Directory.GetFiles 与您的路径一起用作输入参数。这会将该文件夹中的所有文件名作为字符串数组返回。

2) 遍历数组以计算有多少文件名符合您的限制(即以 HelloWorld 开头并以 .txt 结尾)

3)生成新的文本文件(就像你在 cmets System.IO.StreamWriter 中指出的那样)

如果您在上述任何步骤中遇到问题,请更具体地说明您遇到的问题。我假设您在从给定文件夹中读取文件名时遇到问题。

【讨论】:

  • 别担心...我已经为你投票了!至少你让我找到了我正在寻找的正确方向!我是一名航空工程师,但对编程非常陌生,无法理解为什么有些成员如此消极!
  • 尝试一次解决一个问题。如果您自己尝试过并遇到困难,人们很乐意帮助您解决具体问题。但是,您的问题似乎有点像您要求从头开始为您编写代码,因为到目前为止您没有提供任何您尝试过的代码。
  • 嗯,我正在尝试创建工程软件的扩展,但我被困在我的逻辑过程的特定部分,找不到任何可用于实现程序目的的函数。跨度>
  • @HW,许多伪专家来这里是为了成名而不是为了愿意提供帮助,这就是为什么投反对票的原因。
【解决方案2】:

您的问题表明没有努力研究解决方案,但我将向您展示如何中继您的目录示例:

string directory = "C:/#";
int count = 0;
string[] files = Directory.GetFiles(directory, "*.txt");
for(int i=0; i<files.Length; i++)
{
    if(files[i].StartsWith("HelloWorld"))
    {
        count++;
    }
}
MessageBox.Show("Num. of files: " + count);

它没有经过测试,我只是写了它。如果它不起作用,请告诉我。

【讨论】:

    【解决方案3】:

    这里是任何可能像我一样苦苦挣扎的人的代码:

            try
            {
                if (FilePath == "")
                {
                    MessageBox.Show("Please Browse for and select a file");
                }
    
                else
                {
                    if (activedrawing == null)
                    {
                        MessageBox.Show("No Drawing Found");
                    }
    
                    else
                    {
                        string fileName = "InsertImage"+ FileName + ".PNG";
                        string sourcePath = FilePath;
                        string targetPath = info.ModelPath;
                        string sourceFile = System.IO.Path.Combine(sourcePath);
                        string destFile = System.IO.Path.Combine(targetPath, fileName);
                        if (!System.IO.Directory.Exists(targetPath))
                        {
                            System.IO.Directory.CreateDirectory(targetPath);
                        }
                        System.IO.File.Copy(sourceFile, destFile, true);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-01
      • 2013-03-09
      • 1970-01-01
      • 1970-01-01
      • 2013-03-04
      • 1970-01-01
      相关资源
      最近更新 更多