System.IO.File.Delete()无效,没有异常抛出

时间:2017-10-24 16:38:52

标签: c# .net

我尝试制作可以创建和删除特定文件夹中的文件夹和特定文件的基本控制台应用程序。

在主文件夹" Files"中创建和删除子文件夹。就像一个魅力,但删除子文件夹中的特定文件根本不起作用。没有异常被抛出,我已经做到了,所以控制台写出完成的组合路径,所以我可以检查它是否真的是最正确的。知道问题可能是什么?

修改
通过调试器,我发现组合路径的值加起来:" c:\\ Files \\ feedfiles \\ examplefile.txt" ,实际路径是错误的,因为我需要它是" c:\ Files \ feedfiles \ examplefile.txt"只有一个" \"分开每个单词而不是两个单词。这可以解决吗?

using System;
using System.IO;

namespace FolderHandler
{
class Program
{
    static void Main(string[] args)
    {
        string folderName = @"c:\Files";
        Console.WriteLine("Enter name of new folder");
        string newFolderName = Console.ReadLine();
        string pathString = Path.Combine(folderName, newFolderName);

        Directory.CreateDirectory(pathString);


        Console.WriteLine("Enter name of folder to delete");
        string folderToDelete = Console.ReadLine();
        string pathString2 = Path.Combine(folderName, folderToDelete);


        if (Directory.Exists(pathString2))
        {
            try
            {
                Directory.Delete(pathString2, true);
            }
            catch (IOException e)
            {
                Console.WriteLine(e.Message);
            }
        }

        Console.WriteLine("Specify folder");
        string subFolderToFind = Console.ReadLine();
        Console.WriteLine("Specify file to delete");
        string fileToDelete = Console.ReadLine();
        string fileLocation = Path.Combine(folderName, subFolderToFind, fileToDelete);

        Console.Write(fileLocation);

        if (File.Exists(fileLocation))
        {
            try
            {
                File.Delete(fileLocation);
            }
            catch (IOException e)
            {

                Console.WriteLine(e.Message);
            }
        }

        Console.ReadKey();
            }
        }
    }

0 个答案:

没有答案