Pergunta

Dado uma string como abaixo, eu preciso converter:

01 de dezembro de 2008 06:43:00 +0100

para

MM / DD / AAAA HH: MM: SSAM

usando jython qual é a melhor maneira de fazer isso?

Foi útil?

Solução

Eu não tenho jython útil, mas eu esperaria algo assim para o trabalho:

import java
sdf = java.text.SimpleDateFormat

fmt_in = sdf('d MMM yyyy HH:mm:ss Z')
fmt_out = sdf('MM/dd/yyyy HH:mm:ssaa')

fmt_out.format(fmt_in.parse(time_str))

Outras dicas

Jython 2.5b0 (beta) tem uma implementação do tempo módulo que inclui

strptime(string[, format]).

analisar uma cadeia que representa um tempo de acordo com um formato. O valor de retorno é um struct_time como retornado por gmtime () ou LocalTime ().

(strptime está faltando em Jython2.2.1).

A versão python dos formatos de conversão será semelhante (não tenho certeza do componente de zona):

import time
mytime = time.strptime("1 Dec 2008 06:43:00 +0100", "%d %b %Y %H:%M:%S %Z")
new_time_string = time.strftime("%m/%d/%Y %I:%M:%S%p", mytime)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top