我需要为客户制作日期时间,例如“12秒”“2011年” 我怎样才能获得本地化字符串“sec”,“year”。是.net中存在特殊格式来获取这些字符串吗?
答案 0 :(得分:5)
不,没有。
您需要构建包含这些本地化值的资源文件并使用它们。
答案 1 :(得分:3)
不,但你可以使用这样的东西。
DateTime.ToString("ss") + "sec";
答案 2 :(得分:2)
你能做的最好的是:
private const string yearText = "{0} year"; // do this for month or hour or minute..
DateTime date = new DateTime(1999, 12, 10, 5, 10, 16);
string year = GetYearString(date);
private string GetYearString(DateTime date)
{
return string.Format(yearText, date.Year);
}
您也可以为此创建一个枚举,并将其传递给您的方法,并根据枚举返回您的字符串。
答案 3 :(得分:2)
使用DateTime.ToString(String,IformatProvider)方法,您可以自定义DateTime的表示(有关详细信息,请参阅the method documentation)。某些选项已使用此API进行本地化,但您需要一个自定义资源文件,用于“sec”,“年”等本地化版本。