java导出导入xmind思维导图

引入jar包:

<dependency>
  <groupId>com.github.eljah</groupId>
  <artifactId>xmindjbehaveplugin</artifactId>
  <version>0.8</version>
</dependency>

测试类(jdk1.8):

import java.io.IOException;
import org.junit.Test;
import org.xmind.core.Core;
import org.xmind.core.CoreException;
import org.xmind.core.IBoundary;
import org.xmind.core.IEncryptionHandler;
import org.xmind.core.ISheet;
import org.xmind.core.ITopic;
import org.xmind.core.IWorkbook;
import org.xmind.core.IWorkbookBuilder;
import org.xmind.core.io.ByteArrayStorage;

/**
 * xmind导出与导入
 */
public class XmindTest {
  @Test
  public void export() throws IOException, CoreException {
    String workbookString = "new.xmind";
    IWorkbookBuilder builder = Core.getWorkbookBuilder();
    IWorkbook workbook = builder.createWorkbook(workbookString);

    ISheet isheet = workbook.getPrimarySheet();
    isheet.setTitleText("sheet1");

    // 新增sheet
    ISheet isheet2 = workbook.createSheet();
    isheet2.setTitleText("sheet2");
    workbook.addSheet(isheet2);

    ITopic root = isheet.getRootTopic();
    root.setTitleText("title");
    root.setHyperlink("hyperlink");
    root.setStructureClass("structureClass");
    root.setFolded(true);

    IBoundary boundary = workbook.createBoundary();
    boundary.setTitleText("boundary");
    root.addBoundary(boundary);

    ITopic child1 = workbook.createTopic();
    child1.setTitleText("child\nTitle");
    child1.setHyperlink("childHyperlink");
    child1.setStructureClass("childStructureClass");
    child1.setFolded(true);
    root.add(child1);

    ITopic child2 = workbook.createTopic();
    child2.setTitleText("child\nTitle");
    child2.setHyperlink("childHyperlink");
    child2.setStructureClass("childStructureClass");
    child2.setFolded(true);
    root.add(child2);

    ITopic child11 = workbook.createTopic();
    child11.setTitleText("child\nTitle");
    child11.setHyperlink("childHyperlink");
    child11.setStructureClass("childStructureClass");
    child11.setFolded(true);
    child1.add(child11);

    ITopic child12 = workbook.createTopic();
    child12.setTitleText("child\nTitle");
    child12.setHyperlink("childHyperlink");
    child12.setStructureClass("childStructureClass");
    child12.setFolded(true);
    child1.add(child12);

    ITopic child21 = workbook.createTopic();
    child21.setTitleText("child\nTitle");
    child21.setHyperlink("childHyperlink");
    child21.setStructureClass("childStructureClass");
    child21.setFolded(true);
    child2.add(child21);

    ITopic child22 = workbook.createTopic();
    child22.setTitleText("childTitle");
//    child22.setHyperlink("childHyperlink");
//    child22.setStructureClass("childStructureClass");
//    child22.setFolded(true);
    child2.add(child22);

    System.out.println(root.getAllChildren().size());

    workbook.save("new.xmind");
  }

  @Test
  public void importIn() throws IOException, CoreException {
    String workbookString = "${projectDirectory}\\new.xmind";
    IWorkbookBuilder builder = Core.getWorkbookBuilder();
    IEncryptionHandler iench = () -> "privet";
    IWorkbook workbook = builder.loadFromPath(workbookString, new ByteArrayStorage(), iench);

    ISheet isheet = workbook.getPrimarySheet();

    ITopic root = isheet.getRootTopic();
    System.out.println("root: "+ root.getTitleText());

    showChildren(root);
  }

  private void showChildren(ITopic root) {
    for (ITopic child : root.getAllChildren()) {
      System.out.println("child: "+ child.getTitleText());

      showChildren(child);
    }
  }
}
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值