内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用
在Java中是否有与php date()风格格式相当的功能?我的意思是,在PHP中,我可以反斜杠转义字符,让他们字面上处理。即YYYY \ Y \Ë\ A \ r将成为2010年。我在Java中没有发现任何类似的东西,所有示例都只涉及内置的日期格式。
特别是,我处理JCalendar日期选择器和它们的dateFormatString属性。
我需要它,因为在我的语言环境中,它需要以日期格式编写各种附加的东西,比如d。(天)天后部分,米。(多年)经过多年的等等。在最糟糕的情况下,我可以使用字符串替换或正则表达式,但也许有一个更简单的方法?提前致谢!
当然,使用SimpleDateFormat,您可以包含文字字符串:
在日期和时间模式字符串中,从'A'到'Z'以及从'a'到'z'的未加引号的字母被解释为代表日期或时间字符串组成部分的模式字母。可以使用单引号(')引用文本以避免解释。“''”代表单引号。所有其他字符不解释; 它们只是在格式化时被复制到输出字符串中,或者在解析过程中与输入字符串匹配。
"hh 'o''clock' a, zzzz" 12 o'clock PM, Pacific Daylight Time
可以使用String.Format,如java.util.Format:
Calendar c = ...; String s = String.format("%tY year", c); // -> s == "2010 year" or whatever the year actually is