【发布时间】:2020-12-08 10:45:46
【问题描述】:
我想解决这个错误。
没有这样的文件或目录@rb_sysopen - zipUpTest/1051687701.jpg
以下是源代码。
Zip::File.open_buffer(obj) do |zip|
zip.each do |entry|
ext = File.extname(entry.name)
file_name = File.basename(entry.name)
next if ext.blank? || file_name.count(".") > 1
dir = File.join(dir_name, File.dirname(entry.name))
FileUtils.mkpath(dir.to_s)
zip.extract(entry, entry.name) {true}
file_name.force_encoding("UTF-8")
file_new_name = "#{dir_name}/#{file_name}"
File.rename(entry.name, file_new_name)
@input_dir << file_new_name
end
end
end
Zip::OutputStream.open(zip_file.path) do |zip_data|
@input_dir.each do |file|
zip_data.put_next_entry(file)
zip_data.write(File.read(file.to_s))
end
end
也就是说没有文件,这个问题怎么处理?
【问题讨论】:
-
检查路径并重试?尝试使用完整路径?
-
该异常发生在哪一行?
-
@tadman
zip.extract(entry, entry.name) {true}这部分有一个例外。我不确定如何详细指定文件路径...
标签: ruby-on-rails ruby