Формат даты Java очень прост - PullRequest
1 голос
/ 26 ноября 2009

как бы вы написали дату, если у меня есть дата, и все, что я хочу, это месяц и день, подобный этому (мм / дд), а затем поверните месяц, как этот, июль, 08

Ответы [ 4 ]

4 голосов
/ 26 ноября 2009

Дайте мне посмотреть, правильно ли я понял.

У вас есть свидание типа "07/08" и вы хотите "июль 08"?

Вы можете попробовать SimpleDateFormat

import java.text.SimpleDateFormat;
import java.text.ParseException;

class Test {
    public static void main( String [] args ) throws ParseException  {

        SimpleDateFormat in  = new SimpleDateFormat("MM/dd");
        SimpleDateFormat out = new SimpleDateFormat("MMMM, dd");

        System.out.println( out.format( in.parse("07/08") ) );

        // Verbose 
        //String input = "07/09";           
        //Date  date = in.parse( input );  
        //String output = out.format( date );
        //System.out.println( output );
    }
}
1 голос
/ 26 ноября 2009

Использование:

Format formatter = new SimpleDateFormat("MMMM, dd");
String s = formatter.format(date);

Форматирование даты с использованием пользовательского формата

1 голос
/ 26 ноября 2009

SimpleDateFormat ваш друг здесь. Если у вас уже есть объект java.util.Date, просто отформатируйте его, используя нужный шаблон (подробности о шаблонах даты и времени см. В javadoc):

SimpleDateFormat out = new SimpleDateFormat("MMMM, dd");
String s = out.format(date); // date is your existing Date object here

(РЕДАКТИРОВАТЬ: я добавляю некоторые детали, поскольку первоначальный вопрос неясен, и я, возможно, пропустил реальную цель.

Если у вас есть String представление даты в заданном формате (например, MM / dd) и вы хотите преобразовать представление, вам понадобится 2 SimpleDateFormat, как указано другими: один для анализа String в Date и еще один для форматирования Date.

SimpleDateFormat in = new SimpleDateFormat("MM/dd");
Date date = in.parse(dateAsString); // dateAsString is your String representation here

Затем используйте фрагмент кода, показанный выше, чтобы отформатировать его.)

0 голосов
/ 26 ноября 2009

месяц и день, как этот (мм / дд), а затем поверните месяц, как этот июль, 08

То есть вы хотите преобразовать MM/dd в MMMM, dd? Итак, вы начинаете с String и заканчиваете с String? Затем вам нужен еще один экземпляр SimpleDateFormat с первым шаблоном.

String dateString1 = "07/08";
Date date = new SimpleDateFormat("MM/dd").parse(dateString1);
String dateString2 = new SimpleDateFormat("MMMM, dd").format(date);
System.out.println(dateString2); // July, 08 (monthname depends on locale!).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...