Member 14649908 Ответов: 2

Как сохранить файл на локальном диске в приложении windows form


У меня есть файл Excel с именем "sample.xlx" в папке моего проекта с именем "File Folder".У меня есть кнопка под названием "btnDownload".Когда пользователь нажимает эту кнопку, вышеуказанный файл excel должен быть сохранен на локальном диске.Путь к файлу должен быть динамическим, чтобы при развертывании проекта на другом компьютере этот путь не прерывался.Обратите внимание, что приложение находится в автономном режиме, что означает, что сохранение файла не требует подключения к интернету.
Как решить эту проблему?

Что я уже пробовал:

частная btnDownload_Click недействительным(объект отправителя, EventArgs в электронной)
{
Диалоговое окно savefiledialog ЮФО = новое диалоговое окно savefiledialog();
СФО.Файл фильтр= "в Excel |*.формате xls;*.XLSX-файл";
if(sfd.ShowDialog()==DialogResult.ОК)
{
Поток fileStream = sfd.Функция openfile();
Модулю записи StreamWriter ео = новая модулю записи StreamWriter(файлового потока);
sw.Write("jhdfhsefefdhk");
ув.Рядом();
файловый поток.Закрывать();
}
}

2 Ответов

Рейтинг:
2

Richard MacCutchan

Сначала вам нужно прочитать исходный файл, чтобы скопировать его в пункт назначения. Но также вы должны использовать двоичный поток для чтения и записи, так как файлы Excel не имеют простого текстового формата.


Maciej Los

5ed!

Рейтинг:
1

0x01AA

Для этого вам даже не нужны потоки. Существует класс файлов, который поддерживает копирование файлов среди прочих.

Здесь Файл.Метод Копирования (System.IO) | Microsoft Docs[^] вы найдете

public static void Copy (string sourceFileName, string destFileName);


Maciej Los

5ed!

0x01AA

Спасибо, Мацей.