2

我已经成功使用java.util.Date,我更愿意继续使用它。基本上,我无法形成对类的方法调用。

我基本上想将日期2014-08-06输入到我的 Clojure 程序中,该程序将使用今天作为日期进行覆盖。这样我就可以形成一个 SQL 查询。我只是不确定如何在 Clojure 中使用 Java 调用。

(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");
4

1 回答 1

3

这是解析调用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 代码。

于 2014-08-06T20:04:55.230 回答