On Sat, 20 Dec 2008 03:12:30 -0800
"Darren Austin" <[email protected]> wrote:
>
> Hey folks,
>
> I am probably missing something obvious here, but is there an good way
> to open a resource file that is relative to the current class path? I
> want to bundle up some data files with my .clj source in a .jar file.
> From the clojure code, I need to open these data files. I looked at
> Class.getResourceAsStream(), but I couldn't find a good way to get an
> object that would give me a Class object from the package/ns of my
> clojure code. Any suggestions on how to achieve this?
>
> Thanks,
> --Darren
>
> >
here's something ...
(defn loadTextResource [path]
(let [bl (.baseLoader clojure.lang.RT)
inps (.getResourceAsStream bl path)]
(if inps
(with-open [r (BufferedReader.
(InputStreamReader. inps))] (let [sb (new StringBuilder)]
(loop [c (. r (read))]
(if (neg? c)
(str sb)
(do
(. sb
(append (char c))) (recur (. r (read))))))))
--
None are more hopelessly enslaved than those who falsely believe they
are free — Goethe
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---