mobile CCTV,mobile surveillance,police body worn cameras

 forgetPW
 registerNow
search
view: 590|reply: 0
打印 prevThread nextThread

写Excel文件后,电脑上必须手动插拔一次连接线才能看到文件变化,什么原因

[copyURL]

2

主题

5

帖子

22

积分

newBie

Rank: 1

积分
22
jumpTo
owner
poston 2023-10-19 20:27 | authorOnly 回帖奖励 |倒序浏览 |阅读模式
代码如下,做了Flush之类的操作依然不行:
  1. public static void exportEquipBindToExcel(List<EquipBind> equipBindList, String filePath,Context context) {
  2.     try (HSSFWorkbook workbook = new HSSFWorkbook ();
  3.          FileOutputStream fileOut = new FileOutputStream(filePath)) {
  4.         Sheet sheet = workbook.createSheet("设备数据");
  5.         String yearMonth=getCurrentYearMonth();


  6.         // 创建标题行
  7.         Row headerRow = sheet.createRow(0);
  8.         String[] headers = {"a", "b"};

  9.         for (int i = 0; i < headers.length; i++) {
  10.             Cell cell = headerRow.createCell(i);
  11.             cell.setCellValue(headers[i]);
  12.         }
  13.         Map<Integer, String> equipTypeMap = new HashMap<>();

  14.         EquipTypeDao equipTypeDao=new EquipTypeDao(context);
  15.         equipTypeDao.open();
  16.         List<EquipType> equipTypeList=equipTypeDao.getEquipTypes("",new String[]{},"");
  17.         for (EquipType equipType : equipTypeList) {
  18.             long id = equipType.getId();
  19.             String equipTypeName = equipType.getEquipTypeName();

  20.             // 将 Id 和 EquipTypeName 存储到 Map 中
  21.             equipTypeMap.put((int)id, equipTypeName);
  22.         }

  23.         // 填充数据
  24.         for (int i = 0; i < equipBindList.size(); i++) {
  25.             EquipBind equipBind = equipBindList.get(i);
  26.             Row row = sheet.createRow(i + 1); // 创建新行,注意标题行已经占用了第一行
  27.             row.createCell(0).setCellValue(i+1);
  28.             row.createCell(1).setCellValue(equipBind.getSecondaryNumber());
  29.         }
  30.         equipTypeDao.close();
  31.         workbook.write(fileOut);

  32.         fileOut.flush();
  33.         fileOut.getFD().sync(); // 强制刷新文件系统缓存

  34.         fileOut.close();
  35.         workbook.close();
  36.         MediaScannerConnection.scanFile(context, new String[] { filePath}, null, null);


  37.     } catch (IOException e) {
  38.         e.printStackTrace();
  39.     }
  40. }
copycode

reply

使用道具 report

creditRule

QQ|wireless surveillance

GMT+8, 2024-12-22 09:19 , Processed in 0.050783 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

QuickReply backToTop BackToList