Dae pessoal, gostaria de saber como faço para pegar o formato padrão de data do Windows…
Desde já agradeço.
vlw
Dae pessoal, gostaria de saber como faço para pegar o formato padrão de data do Windows…
Desde já agradeço.
vlw
Esta configuração é específica do windows, então provavelmente você só vai conseguir obtê-la via JNI.
No entanto, se o que você quer apenas formatar e internacionalizar o código, aqui vai um exemplo:
String resultado;
SimpleDateFormat formatter;
formatter = new SimpleDateFormat("EEEE',' dd 'de' MMMM 'de' yyyy", Locale.getDefault());
resultado = formatter.format(new Date());
System.out.println("Data: " + resultado);
Eh q nao queria fazer isso, quero algum método q me retorne o formato de data padrão do sistema operacional…
Por exemplo: “dd/mm/yyyy”
Um abraço
Tente isto:
Date data = new Date();
Locale locale = Locale.getDefault(); //Pega as configuracoes regionais do Sistema Operacional.
DateFormat dt = DateFormat.getDateInstance(DateFormat.SHORT,locale);
System.out.println(dt.format(data));
Maiores informações consulte:
Especificações da API
http://java.sun.com/j2se/1.5.0/docs/api/index.html
Tutorial interessante da WebInsider (em pt):
http://webinsider.uol.com.br/vernoticia.php/id/90
Olá pessoal,
Recentemente me surgiu a necessidade de formatar a data obtida de um select (SQL) no formato padrão configurado no desktop do usuário antes de exibi-la. Com as informações aqui do fórum cheguei à seguinte solução:
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Locale;
public class TestData {
public static void main(String[] args){
String dataBD = "2006-01-01 00:00:00.000";
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSS");
java.util.Date newDate = null;
try {
newDate = (java.util.Date) df.parse(dataBD);
} catch (ParseException e) {
System.err.println("Erro "+e.getMessage());
}
Locale locale = Locale.getDefault(); //Pega as configuracoes regionais do Sistema Operacional.
DateFormat dt = DateFormat.getDateInstance(DateFormat.SHORT,locale);
System.out.println(dt.format(newDate));
}
}
tenho um método que entra uma data em String. Você indica o formato dela e o formato de saida.
public static String formatData(String data, String formatEntrada, String formatSaida){
try {
Date dataAux = new SimpleDateFormat(formatEntrada).parse(data);
return new SimpleDateFormat(formatSaida).format(dataAux);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
queria pegar o formato do sistema dessa forma em String para utilizar nesse método.
(data, "M/d/yyyy" , "MM/yyyy").
dessa forma funciona… mais queria de forma mais dinâmica caso algum pateta mude o formato do servidor … exemplo…
(data, formtServer , "MM/yyyy").
já tentei com
Locale local = Locale.getDefault(); //Pega as configuracoes regionais do Sistema Operacional.
DateFormat dtf = DateFormat.getDateInstance(DateFormat.DEFAULT, local);
mais ainda não cheguei nos finalmente.