EMF可以在xml和model對象之間進行串行化和反串行化,這個主要是利用Resource的相關方法來實現,但是如果需要對某個EMFmodel節點轉換成xml字符串,該如何做呢?這里EMF提供了另外一個類XMLProcessor,該類提供了load方法用來將xml文件、字符串或者dom對象轉換成EMF模型對象,以及save方法將EMF模型對象轉換成xml字符串、xml dom對象或者xml文件。XMLProcessor實際上調用Resource的相關方法來處理的,因此在調用load或者save方法之前需要手工構造相應的Resource對象。
java 代碼
- ViewXMLResourceImpl resource = new ViewXMLResourceImpl();
- EObject eCloneDataset = EcoreUtil.copy(eDataset);
- DoradoEcoreUtils.eSet(eCloneDataset,
- IDoradoConstants.ATTR_AUTO_CREATE_FIELDS, Boolean.TRUE);
- resource.getContents().add(eCloneDataset);
- String xml = "";
- try {
- xml = new XMLProcessor().saveToString(resource, null);
- } catch (IOException e) {
- ExceptionHandler.processException(e);
- }
安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢】