9

このような日付形式を作成しています:

SimpleDateFormat sdf =new SimpleDateFormat("MMM d, EEE, h:mm a");

このような日付、月、時刻の間に新しい行が必要です

thus ,sep 6
4:25pm

だから私は次の変更を加えました:

SimpleDateFormat sdf =new SimpleDateFormat("MMM d, EEE,"+"\n"+" h:mm a");

それは私に何も与えませんでした、それはこのように一行でそれを作成しただけです:

thus ,sep 6 4:25pm

だから私はこのようなフォーマットオブジェクトを取りました

SimpleDateFormat sdf =new SimpleDateFormat("MMM d, EEE,");
SimpleDateFormat sdf1 =new SimpleDateFormat(" h:mm a");

そしてこれをしました:

sdf.format(calendar.getTime())+"\n"+sdf1.format(calendar.getTime())

しかし、それは再び同じ結果をもたらします

thus ,sep 6 4:25pm

calendarはCalendarオブジェクトです。どんな助けでもありがたいです!!

4

5 に答える 5

10

あなたのコメントの1つから、元のソリューションが実際に機能していることがわかりますが、ここに来たときに同じ質問があったので、この質問に対する回答を追加します。(私のフォーマットはあなたのものとは少し異なります。)

Date date = new Date(unixMilliseconds); 
SimpleDateFormat sdf = new SimpleDateFormat("MMM d, yyyy\nh:mma");
String formattedDate = sdf.format(date);

は(ドキュメントを参照)によって解釈されないため、\ninは機能し、Java文字列に渡されます。それらが特別な意味を持っていた場合は、一重引用符を使用できます:(これも機能します)。MMM d, yyyy\nh:mma\nSimpleDateFormatMMM d, yyyy'\n'h:mma

于 2014-10-17T08:39:08.197 に答える
2

\ nを使用しないでください、使用してください:

System.getProperty("line.separator");

行区切り文字を取得します。


キャリッジリターンを使用できるという別の情報源を見つけました。

于 2012-09-06T12:55:19.183 に答える
2

<br/>HTMLビューに表示している場合は、の代わりにHTMLの改行を使用する必要があります\n

于 2012-09-06T12:56:10.070 に答える
2

\nAndroidは、実際の改行文字ではなく、文字列に文字通り表示される必要があると思います。したがって、Java文字列のバックスラッシュをエスケープする必要があるため、次のようになります。

String output = "Thus ,Sep 6" + "\\n" + "4:25pm";
于 2012-09-06T14:38:20.613 に答える
1

本当に\n消えますか?少なくとも最後の試行は、日付形式とは何の関係もありません。たまたまWebページの出力を作成し、の<br />instreadを使用する必要があり\nますか?

于 2012-09-06T12:55:17.250 に答える