Как сохранить файл Excel в указанное c расположение C#? - PullRequest
0 голосов
/ 29 апреля 2020

Это приложение формы Windows, использующее. NET инфраструктуру, которая сохраняет записи в базе данных MS. Также имеется возможность экспортировать базу данных в виде файла Excel.

Это моя функция нажатия кнопки «Создать файл Excel»:

private void button5_Click(object sender, EventArgs e)
    {
        con.Open();
        SqlCommand cmd = con.CreateCommand();
        cmd.CommandType = CommandType.Text;
        cmd.CommandText = "select * from [dbo].[Table]";
        cmd.ExecuteNonQuery();

        DataTable dt = new DataTable();
        SqlDataAdapter da = new SqlDataAdapter(cmd);

        DataSet ds = new DataSet("New_DataSet");
        ds.Locale = System.Threading.Thread.CurrentThread.CurrentCulture;
        da.Fill(dt);
        ds.Tables.Add(dt);
        ExcelLibrary.DataSetHelper.CreateWorkbook("MyExcelFile.xls",ds);

        MessageBox.Show("Archivo excel generado correctamente.");

        con.Close();
    }

Используя мою опубликованную версию приложения, заметил, что Файл Excel создается в "C: \ Users \ userName \ AppData \ Local \ Apps \ 2.0 \ ZDTK7LMQ.YEZ \ V0BOPT21.N23" по умолчанию.

Id ', как изменить место сохранения. Любые подсказки?

PD: Я использую библиотеку Excel "ExcelLibrary".

using ExcelLibrary.CompoundDocumentFormat;
using ExcelLibrary.SpreadSheet;
using ExcelLibrary.BinaryDrawingFormat;
using ExcelLibrary.BinaryFileFormat; 

1 Ответ

0 голосов
/ 29 апреля 2020

Что делать, если вы попытаетесь добавить \ one sla sh или две косые черты \ \ перед именем файла и посмотреть, имеет ли это значение: "\ MyExcelFile.xls" или "\ \ MyExcelFile.xls". Кроме того, вы можете извлечь имя файла и создать имя файла и путь в виде строки, а затем добавить строку к вызову следующим образом:

var path = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "desired_dir_name"); // bin, etc
string myFileNameAndPath = path + "\\" + "MyExcelFile.xls";
ExcelLibrary.DataSetHelper.CreateWorkbook(myFileNameAndPath ,ds);

Запустите отладчик до конца, чтобы увидеть, какие пути устанавливаются и измените местоположение в соответствии с вашими потребностями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...