我正在尝试将datetime对象转换为基于用户定义模式的String。
例如,如果用户传入字符串“早上好,今天是E MM / dd / yyyy。”,我会将日期格式替换为当前时间。
“早上好,今天是2013年11月15日星期五。”
可以joda time library
来处理吗?或者我是否必须搜索每种可能的模式并手动进行字符串替换?
答案 0 :(得分:0)
在检测和解析日期字符串方面没有任何魔力。
您如何知道哪些部分是静态文本以及哪些部分是格式化字符?你能依靠用户知道并输入格式字符串吗?我知道的大多数用户只需输入有效的日期就会遇到困难。
如果有一些规则如"单词 将始终是文本和格式之间的分隔符",那么您可以[a]创建一个包含该格式的格式化程序带有单引号的静态文本,或[b]单独设置日期时间并简单地连接静态文本。
我建议你简单地让Joda-Time选择一种本地化为用户语言和文化的格式。请参阅DateTimeFormat.forStyle
。