// vytvoreni DataGridu - POZOR, pouzivame System.WebNezapomeňte přidat referenci na System.Web.
System.Web.UI.WebControls.DataGrid grid = new System.Web.UI.WebControls.DataGrid();
grid.HeaderStyle.Font.Bold = true;
// tabulka byla v mem pripade typu DataTable - obecne zde muze byt jakykoliv DataSource
grid.DataSource = tabulka;
// velice dulezity radek - provede napojeni dat.
//Zde rozdil oproti bindovani v klasickych Win Forms
grid.DataBind();
// cesta, kam checeme soubor ulozit - ukladame na plochu
string cesta = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop),
"test.xls");
// vyrenderovani DataGridu do souboru
using (StreamWriter sw = new StreamWriter(cesta))
{
using (HtmlTextWriter hw = new HtmlTextWriter(sw))
{
grid.RenderControl(hw);
}
}
Pokud potřebujete data naopak převést z excelovské tabulky do DataTable, můžete použít tento kód:
private DataTable getDataFromXLS(string strFilePath)
{
try
{
string strConnectionString =string.Empty;
strConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="+strFilePath+@";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1""";
OleDbConnection cnCSV = new OleDbConnection (strConnectionString);
cnCSV.Open();
OleDbCommand cmdSelect = new OleDbCommand (@"SELECT * FROM [NazevPrvnihoListu$]", cnCSV);
OleDbDataAdapter daCSV = new OleDbDataAdapter();
daCSV.SelectCommand = cmdSelect;
DataTable dtCSV = new DataTable ();
daCSV.Fill(dtCSV);
cnCSV.Close();
daCSV = null;
return dtCSV;
}
catch(Exception ex)
{
return null;
}
}
Žádné komentáře:
Okomentovat