我在excel表中的时间格式为14:44:02 但用c#导入到dataGridView中时却变成了1899-12-30 14:44 后面的秒丢失了~
请大家帮下忙,如何才可以取得正确的格式,我导入的代码如下:
private System.Data.DataTable GetExcelToDataTable(string filePath)
{ //连接串
DataSet ds = new DataSet();
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + filePath + ";" + "Extended Properties='Excel 8.0;HDR=NO;'";
OleDbConnection conn = new OleDbConnection(strConn); conn.Open();
//返回Excel的架构,包括各个sheet表的名称,类型,创建时间和修改时间等
System.Data.DataTable dtSheetName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" }); //包含excel中表名的字符串数组
string[] strTableNames = new string[dtSheetName.Rows.Count];
for (int k = 0; k < dtSheetName.Rows.Count; k++)
{
strTableNames[k] = dtSheetName.Rows[k]["TABLE_NAME"].ToString();
} OleDbDataAdapter myCommand = null;
System.Data.DataTable dt = new System.Data.DataTable(); //从指定的表明查询数据,可先把所有表明列出来供用户选择
string strExcel = "select * from [" + strTableNames[0] + "]";
myCommand = new OleDbDataAdapter(strExcel, strConn);
dt = new System.Data.DataTable();
myCommand.Fill(dt); conn.Close();
return dt; }
请大家帮下忙,如何才可以取得正确的格式,我导入的代码如下:
private System.Data.DataTable GetExcelToDataTable(string filePath)
{ //连接串
DataSet ds = new DataSet();
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + filePath + ";" + "Extended Properties='Excel 8.0;HDR=NO;'";
OleDbConnection conn = new OleDbConnection(strConn); conn.Open();
//返回Excel的架构,包括各个sheet表的名称,类型,创建时间和修改时间等
System.Data.DataTable dtSheetName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" }); //包含excel中表名的字符串数组
string[] strTableNames = new string[dtSheetName.Rows.Count];
for (int k = 0; k < dtSheetName.Rows.Count; k++)
{
strTableNames[k] = dtSheetName.Rows[k]["TABLE_NAME"].ToString();
} OleDbDataAdapter myCommand = null;
System.Data.DataTable dt = new System.Data.DataTable(); //从指定的表明查询数据,可先把所有表明列出来供用户选择
string strExcel = "select * from [" + strTableNames[0] + "]";
myCommand = new OleDbDataAdapter(strExcel, strConn);
dt = new System.Data.DataTable();
myCommand.Fill(dt); conn.Close();
return dt; }
解决方案 »
- C#如何用html向winform中的控件传值或调用winform中的方法
- 焦点设置无效的问题,大家帮忙看看
- 长期请教关于C#设计模式问题
- 有个关于文本框光标的问题
- 数据库问题:当一个业务要对数据库进行多步操作,我该怎么办?
- 怎么给gridview里的SelectedIndexChanged事件里某个变量赋值
- 第一次看C#,根据教程写的第一个C#程序无法调试,朋友都帮帮忙啊,,我搞了2天了
- 大家知不知道电子公文在服务器上是以什么格式存放的?
- 求各位老大给介绍一本C#入门书籍
- C#编程规范
- vs2005中写代码时按下点号出来的各种图标分别表示什么?
- vs2005重置工具箱devexpress组件在工具箱没有了
dataGridView1.Columns[2].DefaultCellStyle.Format = "HH:mm:ss";
我这样写对吗? 编译可以通过 但没效果
dataGridView1.DataSource = GetExcelToDataTable(openFileDialog1.FileName);
DataGridViewCellStyle style = new DataGridViewCellStyle();
style.Format = "HH:mm:ss";
this.dataGridView1.Columns["F2"].DefaultCellStyle = style;