我正在创建这样的日期格式:
SimpleDateFormat sdf =new SimpleDateFormat("MMM d, EEE, h:mm a");
Run Code Online (Sandbox Code Playgroud)
我需要在日期,月份和时间之间划一条新线
thus ,sep 6
4:25pm
Run Code Online (Sandbox Code Playgroud)
所以我做了以下更改:
SimpleDateFormat sdf =new SimpleDateFormat("MMM d, EEE,"+"\n"+" h:mm a");
Run Code Online (Sandbox Code Playgroud)
它没有给我任何东西只是它在一行中创建它像这样:
thus ,sep 6 4:25pm
Run Code Online (Sandbox Code Playgroud)
所以我采用了这样的格式对象
SimpleDateFormat sdf =new SimpleDateFormat("MMM d, EEE,");
SimpleDateFormat sdf1 =new SimpleDateFormat(" h:mm a");
Run Code Online (Sandbox Code Playgroud)
并做到了这一点:
sdf.format(calendar.getTime())+"\n"+sdf1.format(calendar.getTime())
Run Code Online (Sandbox Code Playgroud)
但它又给出了相同的结果
thus ,sep 6 4:25pm
Run Code Online (Sandbox Code Playgroud)
日历是一个日历对象.任何帮助将不胜感激!
我从你的一条评论中看出你的原始解决方案确实有效,但是当我来到这里时我遇到了同样的问题,所以让我为这个问题添加一个答案.(我的格式与你的格式略有不同.)
Date date = new Date(unixMilliseconds);
SimpleDateFormat sdf = new SimpleDateFormat("MMM d, yyyy\nh:mma");
String formattedDate = sdf.format(date);
Run Code Online (Sandbox Code Playgroud)
将\n在MMM d, yyyy\nh:mma作品因为无论是\还是n被解释SimpleDateFormat(见文档),因此到Java的String传递.如果它们确实具有特殊含义,您可以使用单引号:( MMM d, yyyy'\n'h:mma也可以).
我认为 Android 确实需要\n出现在字符串中,而不是实际的换行符。因此,您需要转义 Java 字符串中的反斜杠,如下所示:
String output = "Thus ,Sep 6" + "\\n" + "4:25pm";
Run Code Online (Sandbox Code Playgroud)