1

私はこの日付と時刻の形式を持っています:

2010-05-19 07:53:30

そしてそれを次のように変更したい:

Wednesday @ 7:53PM 5/19/2010

私はこれをやっています。これは現在のフォーマットを取得します:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";

しかし、フォーマットを変更すると、null になります。例えば:

formatter.dateFormat = @"hh:mm tt MM-dd-yyyy";
date = [formatter stringFromDate:formattedDate];

日付は null になります。最終結果を NSString に入れたい。時間と日付を別々のプロパティとして出力できれば、好きなように配置できるといいのですが。フォーマットを変更する方法についてのアイデアはありますか?

4

2 に答える 2

2

あなたのフォーマット文字列が問題だと思います。UTS#35 Date Format Patternsの表にある文字のみを使用してください。私はあなたのコードを試してみましたが、時間hh:mmが正しく表示されている間、書式設定ttはテーブルではなくで停止します!

テーブルにないフォーマット文字列の文字が本当に必要な場合は、それらをエスケープできます。たとえば、hh 'o''clock' a, zzzz「午後 12 時、太平洋夏時間」のようなフォーマットを生成します。

于 2010-05-20T05:34:12.763 に答える
0

時間と日付を別々のプロパティとして出力できれば、好きなように配置できるといいのですが。フォーマットを変更する方法についてのアイデアはありますか?

あなたは後ろ向きのものを持っています。これがユーザーに表示される日付/時刻である場合は、自分が望む方法ではなく、ユーザーが望む方法で提示する必要があります。たとえば、米国外のほとんどの人は、特に 13 日未満の場合、MM-dd-yyyy と混同されます。 -setDateStyle:および-setTimeStyle:の使用を検討してください。そうすれば、表示文字列はユーザ​​ーの期待どおりに表示されます。

于 2010-05-20T08:18:05.820 に答える