salesforce中时间问题
程序员文章站
2022-05-12 16:34:21
...
salesforce中时间问题
数据库中存的都是0区时间,通过soql查询得到的格式为2020-09-12T06:30:04.000+0000, 系统标准页面显示的时间为当前时区时间,后台会自动转换。
格式化时间:
Datetime dt = (Datetime)sObject.get(datetime_field);
String formatDate =dt.format(); // format方法会自动转成当前用户的时区
将字符串类型时间格式化:
String str = '2020-09-10 00:00:00';
// Datetime dt = Datetime.valueOf(str); // 默认接收的字符串为当前时区时间
Datetime dt = Datetime.valueOfGmt(str); // 接收的字符串为0区时间
// String dataStr = dt.format('yyyy-MM-dd HH:mm:ss', tzNmae);
String dateStr = dt.format(); // 不传时区参数,默认转成当前时区
System.debug(LoggingLevel.DEBUG, '*** dataStr: ' + dataStr);
获取当前时区:
System.TimeZone tz = UserInfo.getTimeZone();
String tzNmae = tz.getDisplayName();