2009-05-17 3 views
1

Est-il possible de convertir facilement JRuby Time/DataTime/Data en java.util.Calendar en incluant le fuseau horaire? Sur #jruby on m'a donné le code cal.set_time_in_millis(time.to_i) mais j'ai perdu des informations sur le fuseau horaire dans betwean. Donc, la question plus spécifique est de savoir comment convertir le fuseau horaire, mais je préférais demander plus large au cas où il y aurait un moyen plus simple.Conversion de Time/DataTime/Data en java.util.Calendar?

Répondre

1

Vous pouvez utiliser la méthode #to_java pour convertir un objet en temps Ruby à un java.util.Date:

require 'java' 
Time.now.to_java 

RemarqueCet La conversion se fait automatiquement lors du passage des objets Ruby aux méthodes Java.

+0

IIRC J'ai posté un bug à ce sujet;) –

1

Je me rends compte que le Time ne stocke pas de fuseau horaire, donc ce qui est retourné par Time.now.zone est le fuseau horaire local.

Par conséquent, il est simple de se convertir à java.util.Data:

data = java.util.Date.new(date.to_i*1000)