验证电子表格是否受到保护

时间:2013-07-22 10:42:37

标签: ruby excel

有人知道如何验证Excel电子表格是否受密码保护?我只需要知道文件是否受到保护。如果有用,可以使用用于保护的密码。

提前致谢!

更新1 : 文件本身是可读的,只有一些部分是写保护的。这就是为什么访问读/写保护文件的一般运行时异常不起作用的原因。

更新2 : 示例文件:http://cl.ly/3B3l1a2A3t3t

1 个答案:

答案 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