如何在GWT中获取不同语言环境的所有日期/时间格式模式

tom*_*nkt 8 gwt locale design-patterns internationalization

我尝试在GWT中获取所有日期/时间格式模式,使用DateTimeFormat.PredefinedFormat来获取当前语言环境的所有模式.但我怎样才能获得其他语言环境的所有模式.

tom*_*nkt 3

我找到了一种方法,不是我想要的通用方法,但在这种情况下它有效。也许有人有更好的解决方案。

   private static Date testDateFormates( String dateText ) {

        ArrayList<String> locales = new ArrayList<String>();

        DateTimeFormatInfo formatDE = new DateTimeFormatInfoImpl_de();
        DateTimeFormatInfo formatEN = new DateTimeFormatInfoImpl_en();
        DateTimeFormatInfo formatFR = new DateTimeFormatInfoImpl_fr();
        DateTimeFormatInfo formatES = new DateTimeFormatInfoImpl_es();
        DateTimeFormatInfo formatZH = new DateTimeFormatInfoImpl_zh();
        DateTimeFormatInfo formatRU = new DateTimeFormatInfoImpl_ru();

        addToList( locales, LocaleInfo.getCurrentLocale().getDateTimeFormatInfo() );
        addToList( locales, formatDE );
        addToList( locales, formatEN );
        addToList( locales, formatFR );
        addToList( locales, formatES );
        addToList( locales, formatZH );
        addToList( locales, formatRU );

        .
        .
        .  
    }

    private static void addToList( ArrayList<String> patterns, DateTimeFormatInfo format ) {
        patterns.add( format.dateFormat() );
        patterns.add( format.dateFormatFull() );
        patterns.add( format.dateFormatLong() );
        patterns.add( format.dateFormatMedium() );
        patterns.add( format.dateFormatShort() );
    }
Run Code Online (Sandbox Code Playgroud)