步骤1:   首先创建一个父类为BlueprintFunctionLibrary的C++类

2.命名为 BPF_UnixTimestampToDateTime ,会自动打开VS2019,生成一个类;

// Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "Misc/DateTime.h"
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "BPF_UnixTimestampToDateTime.generated.h"/*** */
UCLASS()
class MYPROJECT_API UBPF_UnixTimestampToDateTime : public UBlueprintFunctionLibrary
{GENERATED_BODY()//UFUNCTION(BlueprintPure, Category = "UnixTimestamp")static FDateTime UnixTimestampToDateTime(int64 UnixTime);UFUNCTION(BlueprintPure, Category = "UnixTimestamp")static FDateTime UnixTimestampToDateTime_s(FString UnixTime);
};

上面这段代码,值得注意的是,每个想要暴露给蓝图的函数或者变量,都必须要声明

比如: UFUNCTION(BlueprintPure, Category = "UnixTimestamp")

// Fill out your copyright notice in the Description page of Project Settings.#include "BPF_UnixTimestampToDateTime.h"FDateTime UBPF_UnixTimestampToDateTime::UnixTimestampToDateTime_s(FString UnixTime)
{char* result = TCHAR_TO_ANSI(*UnixTime);uint64 unixTime_t = _atoi64(result);uint64 tmpUnix = unixTime_t / 1000;//sprintf(result, "%lld", unixTime_t);FDateTime Time = FDateTime::FromUnixTimestamp(tmpUnix);FTimespan spanT = FTimespan(8,0,0);Time = Time.operator+(spanT);      //UTC time +8 hour(china)//*UE_LOG(LogTemp, Warning, TEXT("%lld"), tmpUnix);int year = Time.GetYear();int month = Time.GetMonth();int day = Time.GetDay();int hour = Time.GetHour();int minute = Time.GetMinute();int second = Time.GetSecond();UE_LOG(LogTemp, Warning, TEXT("时间:%d, %d, %d, %d, %d, %d"), year, month, day, hour, minute, second);*/return Time;
}

因为linux系统传过来的时间戳是13位,然而UE4.26系统能转换的只有10位,所以需要除以1000(去掉毫秒部分),然后FromUnixTimestamp函数 才能得到正确的时间。

3.然后编译...  在蓝图里用;右键输入函数  UnixTimestampToDateTime_s

UE4 unix13位时间戳 转Windows DateTime相关推荐

  1. python 获取 精确的13位时间戳 以及使用datetime 获取时间间隔

    调度任务中常常要用到精确的时间,如果获取的13位时间戳不够准确的话,会造成数据的重复或者缺失 通常的不准确的13位时间戳的获取方式(秒*1000) import time millis = int(r ...

  2. python生成时间戳_python生成13位或16位时间戳以及反向解析时间戳的实例

    我就废话不多说了,直接上代码吧! import datetime import time def get_float_time_stamp(): datetime_now = datetime.dat ...

  3. python如何得到13位时间戳?

    python用time.time()得到的不是13位的时间戳,要怎么才能得到13位的? python获取当前时间的unix时间戳 Unix timestamp:是从1970年1月1日(UTC/GMT的 ...

  4. python日期格式转换成13位时间戳_python生成13位或16位时间戳以及反向解析时间戳的实例...

    我就废话不多说了,直接上代码吧! import datetime import time def get_float_time_stamp(): datetime_now = datetime.dat ...

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

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

  6. python 13位时间戳

    # -*- coding:utf-8 -*- import time import datetime def millisecond_to_time(millis):     "" ...

  7. python 13位时间戳处理

    1. python 时间戳处理 Unix 时间戳根据精度的不同,有 10 位(秒级),13 位(毫秒级),16 位(微妙级)和 19 位(纳秒级).在 python 中,我们可以将一个整数的时间戳转换 ...

  8. python 获取10位和13位 时间戳

    以前不知道时间戳还要13位的,因为java默认精度是毫秒级别的,生成的时间戳是13位,而python默认是10位的,精度是秒,所以是精度不一样导致的,下面是一些转换的方法,供参考. 一.当前时间转换成 ...

  9. HTML 传输 字符转换 进制转换 15位 18位 时间戳 转换

    <h1>中国</h1> ######################################## HTML字符实体 格式:&#ASCII码十进制数; <h ...

最新文章

  1. Angular应用中配置全局路径映射
  2. 通过命令行形式编译QT源程序
  3. 一步一步学习iOS 5编程(第三版)-PDF中文版-正式发布!
  4. 【学习笔记】3、Jupyter Notebook无法打开问题处理
  5. 纯css3开发的响应式设计动画菜单(支持ie8)
  6. HGE2D引擎按键消息分析(续)
  7. sqlserver 字符串转化数值函数_Excel常见函数用法(TEXT函数)
  8. 机器学习之Stacking原理与实战
  9. 上传jar到本地仓库
  10. 用链表队列实现基数排序;
  11. google地球无法连接_WiFi无法连接?解决macOS Big Sur/Mojave/ Catalina上的Wi-Fi问题
  12. adaboost代码实现
  13. TopCoder交题方法
  14. 网络安全实验4 SQL注入攻击
  15. 史上最简SLAM零基础解读(4) - 单应性Homography →公式推导与细节理解
  16. 总结30个Python赚钱的接单平台!兼职月入5000+,成年人的世界,钱是活下去的筹码
  17. 对比DoS攻击与DDoS攻击
  18. .netMVC企业微信网页授权+注册全局过滤器
  19. (遇到问题)鼠标右键卡住且一直显示转圈
  20. 谷歌高级搜索_您如何设置高级Google搜索条件?

热门文章

  1. 水质模型发展历程以及水质模拟软件介绍
  2. 亚马逊Amazon常用API接口-获得商品详情-接入说明
  3. 大数据工具之Superset
  4. scala集合和java集合的转换-List
  5. 消除Windows XP开机画面
  6. python有哪些代码_Python有哪些神一般的蜜汁操作?(附代码),
  7. 《周志明的软件架构课》学习笔记 Day5
  8. Android APP 定时提醒
  9. xlsx模块 前端_纯前端利用 js-xlsx 之单元格样式(4)-阿里云开发者社区
  10. 电子书阅读器Moon + Reader Pro v6.5 Final(Mod)