我有一个显示日期值的文本字段 - 这需要是一个文本字段,因为如果日期值 = 0D,它还需要显示值“未确定”。
我想根据我的区域设置在此文本字段中显示日期。
例如,如果我将区域设置中的短日期值设置为 d/M/yyyy,我希望文本字段显示 2015 年 1 月 1 日,而不是 2015 年 1 月 1 日。
有谁知道这是否可能以及如何:)?
我有一个显示日期值的文本字段 - 这需要是一个文本字段,因为如果日期值 = 0D,它还需要显示值“未确定”。
我想根据我的区域设置在此文本字段中显示日期。
例如,如果我将区域设置中的短日期值设置为 d/M/yyyy,我希望文本字段显示 2015 年 1 月 1 日,而不是 2015 年 1 月 1 日。
有谁知道这是否可能以及如何:)?
一种方法是使用delChr 函数(代码,文本) 并删除文本上的“0”
我使用 DotNet 变量解决了这个问题。您需要声明 3 个 DotNet 变量并为每个变量分配正确的子类型,外加一个变量,类型为“记录”,子类型为“语言”。您可以在下面看到您需要分配的每个 DotNet 变量的子类型。
名称: CultureInfo 数据 类型: DotNet 子类型: System.Globalization.CultureInfo.'mscorlib,版本=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089'
名称: DateTimeFormatInfo 数据类型: DotNet 子类型: System.Globalization.DateTimeFormatInfo.'mscorlib,版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089'
名称: DateTime1 数据类型: DotNet 子类型: System.DateTime.'mscorlib,版本=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089'
Date2Text(Date : Date) : Text
CultureInfo := CultureInfo.GetCultureInfo(Lng.GetLanguageID(Lng.GetUserLanguage));
DateTimeFormatInfo := CultureInfo.CurrentCulture.DateTimeFormat;
DateTime1 := DateTime1.DateTime(DATE2DMY(Date,3), DATE2DMY(Date,2), DATE2DMY(Date,1));
EXIT(DateTime1.ToString('d', DateTimeFormatInfo));