liaojr123 2017-06-13 01:25 采纳率: 0%
浏览 1459

Java 如何限定Excel不能够复制?

图片说明

如图所示,需要控制这两个属性才可以控制excel内容不可复制,但是找不到方法,求大神指导,POI和JXL已试过,可能是的方法不对,求代码,在线等!

  • 写回答

1条回答 默认 最新

  • engchina 2017-06-13 02:12
    关注

    使用XSSFSheet的lockSelectLockedCells和lockSelectUnlockedCells方法。

    事例代码如下。

    import java.io.FileOutputStream;
    import java.io.IOException;
    
    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.ss.usermodel.CellStyle;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.ss.usermodel.Workbook;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    
    public class Test1 {
    
        public static void main(String[] args) throws IOException {
    
            String file = "E:\\tmp\\2.xlsx";
            FileOutputStream outputStream = new FileOutputStream(file);
            Workbook wb = new XSSFWorkbook();
    
            CellStyle unlockedCellStyle = wb.createCellStyle();
            unlockedCellStyle.setLocked(false);
    
            // Sheet sheet = (XSSFSheet)wb.createSheet();
            XSSFSheet secureSheet = (XSSFSheet) wb.createSheet();
    
            Row row = secureSheet.createRow(0);
            Cell cell = row.createCell(0);
            cell.setCellValue("TEST");
            cell.setCellStyle(unlockedCellStyle);
    
            secureSheet.protectSheet("");
            secureSheet.lockSelectLockedCells(true);
            secureSheet.lockSelectUnlockedCells(true);
    
            wb.write(outputStream);
            outputStream.close();
        }
    
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止