### Question:
OFDReader implements Closeable { public OFDDir getOFDDir() { return ofdDir; } private  OFDReader();  OFDReader(Path ofdFile); Path getWorkDir(); OFDDir getOFDDir(); ST_Loc getDefaultDocSignaturesPath(); Signatures getDefaultSignatures(); boolean hasSignature(); Annotations getAnnotations(); int getNumberOfPages(); PageInfo getPageInfo(int pageNum); ST_Box getPageSize(Page page); Page getPage(int pageNum); ST_ID getPageObjectId(int pageNum); ResourceLocator getResourceLocator(); CT_Attachment getAttachment(String name); Path getAttachmentFile(String name); @Override void close();  }### Answer:
@Test void getOFDDir() throws IOException, DocumentException { try (OFDReader reader = new OFDReader(src)) { OFDDir ofdDir = reader.getOFDDir(); OFD ofd = ofdDir.getOfd(); String docID = ofd.getDocBody().getDocInfo().getDocID(); assertEquals("6b9c7c83cff048e7b427ef0567f3e065", docID); } }
@Test void lowLevelOp() throws IOException, DocumentException { Path out = Paths.get("target/EditTitleAuthor.ofd"); try (OFDReader reader = new OFDReader(src)) { OFDDir ofdDir = reader.getOFDDir(); OFD ofd = ofdDir.getOfd(); DocBody docBody = ofd.getDocBody(); CT_DocInfo docInfo = docBody.getDocInfo(); System.out.println(">> 文档标题：[" + docInfo.getTile() + "] -> [Hello World]"); System.out.println(">> 文档作者：[" + docInfo.getAuthor() + "] -> [权观宇]"); docInfo.setTile("Hello World"); docInfo.setAuthor("权观宇"); docInfo.setModDate(LocalDate.now()); ofdDir.jar(out); } System.out.println(">> 文档生成位置：" + out.toAbsolutePath().toString()); try (OFDReader reader = new OFDReader(out)) { OFDDir ofdDir = reader.getOFDDir(); OFD ofd = ofdDir.getOfd(); DocBody docBody = ofd.getDocBody(); CT_DocInfo docInfo = docBody.getDocInfo(); assertEquals(docInfo.getTile(), "Hello World"); assertEquals(docInfo.getAuthor(), "权观宇"); } }