时间戳转换

时间戳转换,关键点在于双向绑定@bind-Value,就简单贴源码吧

TimestampTool.razor

@page "/timestamp"
@using BlazorComponent.I18n
@layout PublicLayout<PageTitle>@T("TimestampToolTitle")</PageTitle><h2 style="margin-bottom: 10px; margin-top: 10px; text-align: center;">@T("TimestampToolDesc")</h2><MRow>@T("TimestampToolDateNow") @DateToTimestamp(DateTime.Now, TimestampKind.Seconds)
</MRow>
<MRow><MTextField Label="@T("TimestampToolTimestamp")" TValue="long" @bind-Value="@_timestamp1"/><MSelect @bind-Value="@_kindValue1"Label="@T("TimestampToolTimestampKind")"Items="@_items"ItemText="u => u.Label"ItemValue="u => u.Value"Class="mx-3"MenuProps="props => props.OffsetY = true"></MSelect><MButton OnClick="@Convert1">@T("TimestampToolConvert")</MButton><MTextField Label="@T("TimestampToolBeijingTime")"TValue="string" @bind-Value="@_datetime1"Class="ml-3"/>
</MRow>
<MRow><MTextField Label="@T("TimestampToolBeijingTime")" TValue="string" @bind-Value="@_datetime2"/><MButton Class="mx-3" OnClick="@Convert2">@T("TimestampToolConvert")</MButton><MTextField Label="@T("TimestampToolTimestamp")" TValue="long" @bind-Value="@_timestamp2"/><MSelect @bind-Value="@_kindValue2"Label="@T("TimestampToolTimestampKind")"Items="@_items"ItemText="u => u.Label"ItemValue="u => u.Value"MenuProps="props => props.OffsetY = true"Class="ml-3"></MSelect>
</MRow><MarkdownComponentLocalPostFilePath="wwwroot/2022/02/2022-02-27_03.md"SourceCodeUrl="https://github.com/dotnet9/dotnet9.com/blob/develop/src/Dotnet9.Tools.Web/Pages/Public/TimeTools/TimestampTool.razor"/>@code
{[Inject]private I18n I18N { get; set; } = default!;private DateTime _currentDatetime;private long _timestamp1;private long _timestamp2;private string? _datetime1;private string? _datetime2;private TimestampKind _kindValue1;private TimestampKind _kindValue2;private readonly List<TimestampItem> _items = new();protected override Task OnInitializedAsync(){_items.Add(new TimestampItem(T("TimestampToolKindSeconds")!, TimestampKind.Seconds));_items.Add(new TimestampItem(T("TimestampToolKindMilliseconds")!, TimestampKind.Milliseconds));_currentDatetime = DateTime.Now;_timestamp1 = _timestamp2 = DateToTimestamp(_currentDatetime, TimestampKind.Seconds);_datetime1 = _datetime2 = _currentDatetime.ToString("yyyy-MM-dd HH:mm:ss");return base.OnInitializedAsync();}private void Convert1(){_datetime1 = TimestampToDate(_timestamp1, _kindValue1).ToString(_kindValue1 == TimestampKind.Seconds ? "yyyy-MM-dd HH:mm:ss" : "yyyy-MM-dd HH:mm:ss.fff");}private void Convert2(){try{_timestamp2 = DateToTimestamp(DateTime.Parse(_datetime2), _kindValue2);}catch{}}private static long DateToTimestamp(DateTime date, TimestampKind kind){try{var point = new DateTime(1970, 1, 1);var time = date.Subtract(point);return (long)(kind == TimestampKind.Seconds ? time.TotalSeconds : time.TotalMilliseconds);}catch{return default;}}private static DateTime TimestampToDate(long timestamp, TimestampKind kind){try{var point = new DateTime(1970, 1, 1);var time = kind == TimestampKind.Seconds ? point.AddSeconds(timestamp) : point.AddMilliseconds(timestamp);return time;}catch{return default;}}public string? T(string key){return I18N.LanguageMap.GetValueOrDefault(key);}enum TimestampKind{Seconds,Milliseconds}class TimestampItem{public string Label { get; }public TimestampKind Value { get; }public TimestampItem(string label, TimestampKind value){Label = label;Value = value;}}
}

Dotnet9工具箱会不断添加新的免费、开源、在线工具,欢迎star支持,有什么需求我会考虑加上,仓库地址:Dotnet9.Tools[1],可提交issue[2]、网站留言[3]、微信公众号(dotnet9)联系等等。

本工具源码:TimestampTool[4]

介绍文章:使用Blazor做个简单的时间戳在线转换工具[5]

在线演示地址:https://tool.dotnet9.com/timestamp[6]

参考资料

[1]

Dotnet9.Tools: https://github.com/dotnet9/dotnet9.com

[2]

提交issue: https://github.com/dotnet9/dotnet9.com/issues/new

[3]

网站留言: https://dotnet9.com

[4]

TimestampTool: https://github.com/dotnet9/dotnet9.com/blob/develop/src/Dotnet9.Tools.Web/Pages/Public/TimeTools/TimestampTool.razor

[5]

使用Blazor做个简单的时间戳在线转换工具: https://dotnet9.com/?p=1801

[6]

https://tool.dotnet9.com/timestamp: https://tool.dotnet9.com/timestamp

使用Blazor做个简单的时间戳在线转换工具相关推荐

  1. 在线时间戳格式化转换工具

    在线时间戳格式化转换工具 在线时间戳格式化转换工具 本工具支持在时间和时间戳之间相互转换,默认时间参考的是服务器时间 Unix时间戳(Unix timestamp),或称Unix时间(Unix tim ...

  2. 在线时间戳 (Unix) 转换工具

    时间戳怎么算出来的?一刀工具箱提供 Unix 时间戳转换可以把 Unix 时间转成北京时间,时间戳转换日期格式,时间戳换算成实际时间. 代码片段 const unixTimeConvert = (va ...

  3. 用python写一个彩票过滤器_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...

    python入门教程 python入门教程NO.6 用python做个简单的彩票号码统计分析工具 本文涉及的python基础语法是:字典.集合及for循环 字典的定义 字典也是一种可变的容器,它可以存 ...

  4. python写彩票预测软件_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...

    python入门教程NO.6 用python做个简单的彩票号码统计分析工具-1.jpg (37.04 KB, 下载次数: 0) 2020-11-27 14:29 上传 python入门教程 pytho ...

  5. 在线时间戳格式化转换工具【推荐】

    在线时间戳格式化转换工具 在线时间戳格式化转换工具 本工具支持在时间和时间戳之间相互转换,默认时间参考的是服务器时间 https://tooltt.com/timestamp/

  6. 最全面的免费格式在线转换工具?这8个网站简直打开了新世界的大门!

    随着订阅制的流行,越来越多软件转向订阅制,其中不乏日常工作中必备的软件. 有些公司会采购一部分软件,但并不会包含每一个你用得顺手的工具.不想花钱,临时有需求,有没有别的办法呢? 今天 我就为大家整理了 ...

  7. csv转json【在线转换工具】、调整日期格式【python】

    目录 一,问题背景 二,解决过程 1,csv转json 2,日期格式调整 一,问题背景 做实验时需要对csv格式的源数据进行处理,主要包括转换为json.调整日期格式两个功能,csv原文件内容如下: ...

  8. 17位时间戳转换为Unix时间戳及转换工具,代码实现转换 WebKit/Chrome Timestamp Converter

    文章目录 前言/目的: 关于17位时间戳 WebKit/Chrome Timestamp的介绍 便捷的在线转换工具 用代码实现转换 Python版本 JavaScript版本 前言/目的: 在浏览微软 ...

  9. Base64在线转换工具(详解)

    1.项目背景: 在计算机中一个字节共有256种,即ascii码表,而ascii码的128~255之间的值是不可见字符,对于一些只支持可见字符的协议,比如邮件传输协议(SMTP)只支持可见的ASCII字 ...

最新文章

  1. 1.磁盘的数据结构包括那些内容?
  2. Win64 驱动内核编程-18.SSDT
  3. 如何查他人【思科CCIE证书真伪、有效期】
  4. Flink快速入门wordcount示例(scala版)
  5. oracle11g ora 29927,Oracle11gR2使用RMANDuplicate复制数据库
  6. git 上传项目到linux仓库_总结:上传python项目至git上前的一些准备工作
  7. aspose条件格式无法读取_分析 Pandas 源码,解决读取 Excel 报错问题
  8. 文本前后空格去除工具
  9. Oracle数据库集中复制方式浅议
  10. icloudbypassca工具win版_Photoshop插件提示无法加载扩展,因为它未经正确签署的解决办法(win/mac)...
  11. 我的世界1.12.2java下载_我的世界1.12.2.2中文版下载 我的世界1.12.2.2中文版单机游戏下载...
  12. AT89S52单片机之定时器/计数器
  13. 做过的医药类DA及产品宣传单页
  14. 招银网络科技--后端面试记录
  15. 福建农村信用社计算机类C卷考什么,2015年福建省农村信用社公开招聘考试《计算机类》真题及详解...
  16. UIWebView中添加活动指示器,来化解用户等待心理
  17. python里面bif是啥意思_什么是BIF?
  18. MyBatisPlus代码生成器(CodeGenerator)
  19. 猛犸创始人季逸超:互联网新人类
  20. android实现分享url,分享 URL,然后启动安卓 APP

热门文章

  1. ORACLE TDE 透明数据加密技术
  2. easyui datagrid plunges 扩展 插件
  3. Open Flash Chart 初体验
  4. webapi+Quartz.NET解决若干定时程序同时运行的问题
  5. 理解Go Interface
  6. vmware 克隆后Linux没有eth网卡只有lo
  7. Chapter 3 Phenomenon——19
  8. 2016 10 26考试 NOIP模拟赛 杂题
  9. Mac OS使用技巧之十六:系统失去响应怎么办?
  10. iphone手机备忘录迁移_如何在iPhone和iPad上使用语音备忘录