我正在创建一个 Excel 文件,它应该是只读的。为此,我使用:
(sheetName).getSettings().setProtected(true);
对于添加的每个新工作表。
只有具有管理员权限的人才能获得对该文件的完全访问权限,因此在确认用户具有管理员权限后,我会:
(workbookName).getSheet(0).getSettings().setProtected(false);
在具有管理员权限的人打开文件后,它不再是只读的,直到普通用户.getSettings().setProtected(true);
再次向其中添加更多内容。换句话说,有人可以在管理员访问文件之后和非管理员之前更改文件。我不知道如何解决它,也许你可以帮助我?
--EDIT--
用户正在向 excel 文件添加数据,用信息文件填充单元格 - 读取工作簿,复制,添加一些信息,写入和关闭工作簿。非管理员用户可以直接打开它以查看他们添加的内容是否存在,或者查看其他用户添加的内容,但他们不应该能够更改文件中的任何内容。
这是一个类似向导的应用程序,它会向用户询问数据,然后将单元格添加到文件中。添加数据的方法之一是here。该文件从用户那里收集个人信息。该应用程序仅用于添加数据,而不是用于访问它。用户只能通过双击输出直接访问文件,并且只能查看数据。管理员可以更改文件,其他用户不应该这样做。