c#如何把Int64转成datetime
时间: 2023-07-27 15:12:26 浏览: 49
在 C# 中,可以使用 `DateTime.FromBinary` 方法将 `Int64` 类型的数字转换为 `DateTime` 类型的日期时间。
以下是示例代码:
```csharp
long ticks = 637460822850000000;
DateTime date = DateTime.FromBinary(ticks);
```
在这个示例中,`ticks` 是一个 `Int64` 类型的数字,表示从 .NET Framework 1.0 开始的 100 个纳秒间隔数。`DateTime.FromBinary` 方法将 `ticks` 转换为对应的 `DateTime` 类型的日期时间。
相关问题
C#如何在导出datatable的时候把datetime转成字符串
在导出 DataTable 时,你可以使用 DataColumn 的 Expression 属性来指定将 DateTime 列转换为字符串的表达式。以下是一个示例代码:
```csharp
DataTable dataTable = new DataTable();
dataTable.Columns.Add("ID", typeof(int));
dataTable.Columns.Add("Name", typeof(string));
dataTable.Columns.Add("BirthDate", typeof(DateTime));
// 添加示例数据
dataTable.Rows.Add(1, "John", new DateTime(1990, 10, 15));
dataTable.Rows.Add(2, "Jane", new DateTime(1995, 5, 20));
// 将 BirthDate 列转换为字符串
dataTable.Columns["BirthDate"].Expression = "CONVERT(BirthDate, 'System.String')";
// 导出 DataTable
var csvData = string.Join(",", dataTable.Columns.Cast<DataColumn>().Select(column => column.ColumnName)) + "\n";
csvData += string.Join("\n", dataTable.Rows.Cast<DataRow>().Select(row => string.Join(",", row.ItemArray)));
// 输出导出的数据
Console.WriteLine(csvData);
```
在上面的示例中,我们通过设置 "BirthDate" 列的 Expression 属性来将 DateTime 值转换为字符串。在表达式中,我们使用了 CONVERT 函数将 BirthDate 列转换为字符串类型。
请注意,这只是一种导出 DataTable 的示例方法,你可以根据自己的需求选择适合的导出方式。
C#已知int数为秒数,用dateTime转换为XX:XX格式字符串
可以使用`TimeSpan`和`DateTime`结合来实现这个功能,具体实现如下:
```csharp
int seconds = 3600; // 假设秒数为1小时
TimeSpan timeSpan = TimeSpan.FromSeconds(seconds);
DateTime dateTime = DateTime.Today.Add(timeSpan);
string timeString = dateTime.ToString("HH:mm"); // 输出为 01:00
```
其中,`TimeSpan.FromSeconds(seconds)`将秒数转换为`TimeSpan`对象,而`DateTime.Today.Add(timeSpan)`将`TimeSpan`对象和今天的日期合并生成新的`DateTime`对象。最后,通过`dateTime.ToString("HH:mm")`将时间格式化为`XX:XX`的字符串。