rubyzip 在 activejob 中提取空文件
rubyzip extracts empty file in activejob
我的 activejob 中有一个函数可以从 zip 文件中提取特定文件。以下代码提取空文件。
def extract_file(from, name)
to = get_local_dest(name)
Zip::File.open(from) do |zip_file|
entry = zip_file.glob(name).first
puts entry.get_input_stream.read
entry.extract(to)
end
return to
结束
我在控制台中添加了一个调试器和 运行 下面的代码行,然后提取的文件不为空。
entry.extract(to)
谁能帮我解决这个问题?为什么这个函数在activejob中运行时会提取空文件?
您的代码似乎没问题。请确保您的文件没有在继续的代码中再次保存。
它有可能提取得很好,但后来在代码中又以空形式保存了。这在我过去发生过:)
如果这解决了您的问题,请告诉我。 :)
我的 activejob 中有一个函数可以从 zip 文件中提取特定文件。以下代码提取空文件。
def extract_file(from, name)
to = get_local_dest(name)
Zip::File.open(from) do |zip_file|
entry = zip_file.glob(name).first
puts entry.get_input_stream.read
entry.extract(to)
end
return to
结束
我在控制台中添加了一个调试器和 运行 下面的代码行,然后提取的文件不为空。
entry.extract(to)
谁能帮我解决这个问题?为什么这个函数在activejob中运行时会提取空文件?
您的代码似乎没问题。请确保您的文件没有在继续的代码中再次保存。
它有可能提取得很好,但后来在代码中又以空形式保存了。这在我过去发生过:)
如果这解决了您的问题,请告诉我。 :)