【发布时间】:2009-10-05 13:07:50
【问题描述】:
我正在从网络上检索 HTML。我得到“java.lang.OutOfMemoryError: Java heap space (repl-1:3)"
;; fetch: URL -> String
;; fetch returns the string of the HTML url
(defn fetch [url]
(with-open [stream (. url openStream)]
(let [buffer (BufferedReader. (InputStreamReader. stream))]
(apply str (line-seq buffer)))))
我认为问题在于 "apply str" 。有没有更简单的方法
- 将缓冲的阅读器转换为字符串?
- 或检索网页?
编辑:我需要检索
【问题讨论】:
-
是否有理由将此部分放在 clojure 中而不是 Java 中?
-
我的整个项目都在clojure中。谢谢。
-
我在多个项目中使用了完全相同的代码来获取并不慢的东西。你说的慢是什么意思?获取某个页面需要 10 秒吗?
-
很抱歉我收到 java.lang.OutOfMemoryError: Java heap space (repl-1:3)