C# datagridview 从excel导入数据后时间的显示



  正在自学C#,遇到个问题。

  我从excel导入数据到datagridview,

 excel中数据是这个样子的:

 

导入到datagridview以后,就变成


导入的时候把excel的时间格式变成文本格式显示了。

解决方法如下:

  在写datagridview执行的sql语句的时候,把格式转换下。

<strong>strSql = "Format(开始时间, 'HH:mm') as 开始时间,Format(结束时间, 'HH:mm') as 结束时间,Format(作业小时, 'HH:mm') as 作业小时 from [作业记录表$]";</strong>

显示的就对了。


 网上的其他方法我用着不行,还在研究中。。。。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好,使用C#DataGridView控件导入Excel文件的步骤如下: 1. 引用Microsoft.Office.Interop.Excel命名空间,以便使用Excel相关的类和方法。 2. 创建Excel应用程序对象和工作簿对象,打开Excel文件。 3. 获取Excel文件中的工作表,遍历每个工作表,将数据读取到DataTable中。 4. 将DataTable中的数据绑定到DataGridView控件中,显示在界面上。 下面是一个简单的示例代码: using System.Data; using Microsoft.Office.Interop.Excel; // 导入Excel文件到DataGridView控件中 private void ImportExcelToDataGridView(string filePath) { // 创建Excel应用程序对象和工作簿对象 Application excelApp = new Application(); Workbook excelWorkbook = excelApp.Workbooks.Open(filePath); // 获取Excel文件中的工作表 foreach (Worksheet excelWorksheet in excelWorkbook.Worksheets) { // 将工作表中的数据读取到DataTable中 DataTable dataTable = new DataTable(); Range excelRange = excelWorksheet.UsedRange; for (int i = 1; i <= excelRange.Columns.Count; i++) { dataTable.Columns.Add(excelRange.Cells[1, i].Value.ToString()); } for (int i = 2; i <= excelRange.Rows.Count; i++) { DataRow dataRow = dataTable.NewRow(); for (int j = 1; j <= excelRange.Columns.Count; j++) { dataRow[j - 1] = excelRange.Cells[i, j].Value; } dataTable.Rows.Add(dataRow); } // 将DataTable中的数据绑定到DataGridView控件中 dataGridView1.DataSource = dataTable; } // 关闭Excel应用程序对象和工作簿对象 excelWorkbook.Close(); excelApp.Quit(); }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值