Загрузка...

При копировании файла в директорию вылазит ошибка

Тема в разделе C# создана пользователем Minin_inactive4471240 24 фев 2022. 223 просмотра

  1. Minin_inactive4471240
    Minin_inactive4471240 Автор темы 24 фев 2022 3 5 сен 2021
    Вылазит ошибка при копировании в директорию: Отказано в доступе. Как фиксить?

    Код
    [
    public static void SecondSaveFile()
    {
    string Newpath = "C:\\Desktop";
    Console.WriteLine(Newpath);
    Console.WriteLine("Введите нынешний путь файла: ");
    path = Console.ReadLine();

    if (File.Exists(Newpath))
    {
    File.Delete(Newpath);
    File.Copy(path, Newpath);
    }
    }
    /CODE]
     
    24 фев 2022 Изменено
  2. vtlstolyarov
    vtlstolyarov 24 фев 2022 468 8 янв 2022
    1. Посмотреть предыдущие комментарии (5)
    2. vtlstolyarov
      Minin_inactive4471240, Я не вижу у тебя в коде вывода сообшения о том что файл успешно скопирован. Можешь показать код который ты запускаешь?
    3. Minin_inactive4471240 Автор темы
      vtlstolyarov,
      Код

      public static void SecondSaveFile()
      {
      string Newpath = "C:\\Users";
      Console.WriteLine(Newpath);
      Console.WriteLine("Введите нынешний путь файла: ");
      string path = Console.ReadLine();
      string concrPath = Path.GetFileName(path);
      if (File.Exists(Newpath))
      {
      try
      {
      File.Delete(Newpath);
      File.Move(concrPath, Newpath);
      Console.WriteLine("Ready");
      }
      catch
      {
      Console.WriteLine("No");
      }

      }
      else if (!File.Exists(Newpath))
      {
      try
      {
      File.Move(concrPath, Newpath);
      Console.WriteLine("Ready");
      }
      catch
      {

      Console.WriteLine("No");
      }

      }

      }
      Только теперь выводится <No>
    4. vtlstolyarov
      Minin_inactive4471240, а чего ты ждал? По первому условию ты пойдёшь в else потому что такого файла не существует (существует такая папка), а в этой ветке ты попытаешься переместить файл задав ему в качестве НОВОГО ИМЕНИ путь к папке - естественно что эта команда падает потому что этот путь занят папкой.

      В документации чётко написано что вторым параметром надо передать новый путь к файлу И ЕГО ИМЯ (а не путь к папке в которую ты хочешь его переместить).
    5. Посмотреть следующие комментарии (2)
Top
Загрузка...