Я успешно использовал java.util.Date
, и я предпочел бы продолжать использовать его. В принципе, мне трудно создавать вызовы метода для класса.
Я в основном хочу подавать дату, такую как 2014-08-06
в мою программу Clojure, которая будет отменять использование сегодня как дату. Это значит, что я могу сформировать SQL-запрос. Я просто не знаю, как использовать вызовы Java в Clojure.
(def x1 (SimpleDateFormat. "yyyy-MM-dd"))
Я просто не знаю, как сформировать синтаксический анализ.
Вот мой core.clj
(ns util.core
^{:author "Charles M. Norton",
:doc "util is a Clojure utilities directory containing things
most Clojure programs need, like cli routines.
Created on April 4, 2012"}
(:require [clojure.string :as cstr]
[clojure.data.csv :as csv]
[clojure.java.io :as io])
(:import java.util.Date)
(:import java.text.SimpleDateFormat)
(:import java.text.ParseException)
(:import java.io.File)
(:use clojure-csv.core))
Вот код Java
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
public class MainClass {
public static void main(String[] args) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
GregorianCalendar gc = new GregorianCalendar();
java.util.Date d = sdf.parse("12/12/2003");
Вот вызов parse в lein repl
user=> (def x1 (SimpleDateFormat. "yyyy-MM-dd"))
#'user/x1
user=> (.parse x1 "2014-08-06")
#inst "2014-08-05T21:00:00.000-00:00"
user=> (type (.parse x1 "2014-08-06"))
java.util.Date
прочитайте http://clojure.org/java_interop, чтобы узнать, как перевести Java-код.
(.parse x1 "2014-08-06")