2010-04-08 20 views
5

Java'da zaman ayırıcısı simgesi ':' almanın bir yolu var mı? Sabit veya başka bir yerde mi? Belki de File.separator'a eşdeğer bir şey var mı? ':' Bu durumda daha sonra birileri bu dizeyi ayrıştırmak istediğindeJava'da zaman ayırıcısı sembolü nasıl alınır?

Zamanım dize sadece kullanmak güvenli mi DateFormat.getTimeInstance(DateFormat.SHORT, locale).format(date);

tarafından döndürülür?

cevap

6

':''u kullanmanın güvenli olduğunu düşünüyorum. SimpleDateFormat'da kodlanmıştır. Örneğin:

if (text.charAt(++pos.index) != ':') 
2

aşağıdaki

public static String getTimeSeparator(Locale locale) { 
    String sepValue = ":"; 

    DateFormat dateFormatter = DateFormat.getTimeInstance(DateFormat.SHORT, 
       locale); 
    DateFormatSymbols dfs = new DateFormatSymbols(locale); 
    Date now = new Date(); 

    String[] amPmStrings = dfs.getAmPmStrings(); 
    String localeTime = dateFormatter.format(now); 
    //remove the am pm string if they exist 
    for (int i = 0; i < amPmStrings.length; i++) { 
     localeTime = localeTime.replace(dfs.getAmPmStrings()[i], ""); 
    } 

    // search for the character that isn't a digit. 
    for (int currentIndex = 0; currentIndex < localeTime.length(); currentIndex++) { 
     if (!(Character.isDigit(localeTime.charAt(currentIndex)))) 
     { 
     sepValue = localeTime.substring(currentIndex, currentIndex + 1); 
     break; 
     } 
    } 

    return sepValue; 
} 
deneyin