有人知道如何验证Excel电子表格是否受密码保护?我只需要知道文件是否受到保护。如果有用,可以使用用于保护的密码。
提前致谢!
更新1 : 文件本身是可读的,只有一些部分是写保护的。这就是为什么访问读/写保护文件的一般运行时异常不起作用的原因。
更新2 : 示例文件:http://cl.ly/3B3l1a2A3t3t
答案 0 :(得分:0)
您可以尝试打开电子表格并捕获运行时错误...
require 'spreadsheet'
begin
book = Spreadsheet.open './mysheet.xls'
sheet1 = book.worksheet 0
sheet1.each do |row|
puts row
end
rescue RuntimeError => e
puts "password protected!" if e.to_s.include? "Unknown Codepage"
end