gpt4 book ai didi

java - Jruby 解压类的每个方法

转载 作者:太空宇宙 更新时间:2023-11-04 15:21:13 25 4
gpt4 key购买 nike

我正在尝试编写一个 JRuby 脚本来解压缩并解析一堆存档日志文件(每个日志都是一个 zip 文件)。像这样就可以很容易地实现。

zipfile = java.util.zip::ZipFile.new(java.io::File.new(@zipfile))
entries = zipfile.entries

while entries.hasMoreElements
entry = entries.nextElement
is = zipfile.getInputStream(entry)
bis = java.io::BufferedInputStream.new(is)
br = java.io::BufferedReader.new(java.io::InputStreamReader.new(bis))
while (line = br.readLine()) != nil
/parsing line here/
end
end
end

但是代码看起来真的很乱。我真正想要的是一个解压缩器类,可以像这样使用,顺便说一句,日志文件可能很大,所以将它们全部加载到内存中不是一个好的选择。理想情况下,每次触发时它只拉下一行

unzipped = Unzipper.new(zipped_log_file_name)
unzipped.each do |x|
/parsing line here/
end

最佳答案

尝试 gem rubyzip - 有更多 ruby​​-sh API http://rubydoc.info/gems/rubyzip/1.1.0/frames

关于java - Jruby 解压类的每个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20363442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com