internal bool XmlIn(Stream stream) { XmlCADDatabase xmlFilerImpl = new XmlCADDatabase(); xmlFilerImpl.Load(stream); // XmlDocument xmldoc = xmlFilerImpl.xmldoc; XmlNode dbNode = xmldoc.SelectSingleNode("Database"); if (dbNode == null) { return(false); } xmlFilerImpl.curXmlNode = dbNode; // ClearLayerTable(); ClearBlockTable(); // Layer table XmlNode layerTblNode = dbNode.SelectSingleNode(layerTable.ClassName); if (layerTblNode == null) { return(false); } xmlFilerImpl.curXmlNode = layerTblNode; layerTable.XmlIn(xmlFilerImpl); // block table XmlNode blockTblNode = dbNode.SelectSingleNode(blockTable.ClassName); if (blockTblNode == null) { return(false); } xmlFilerImpl.curXmlNode = blockTblNode; blockTable.XmlIn(xmlFilerImpl); _idMgr.reset(); return(true); }
public void Write(Stream stream) { XmlCADDatabase xmlFilerImpl = new XmlCADDatabase(); // xmlFilerImpl.NewSubNodeAndInsert("Database"); { // block table xmlFilerImpl.NewSubNodeAndInsert(blockTable.ClassName); blockTable.XmlOut(xmlFilerImpl); xmlFilerImpl.Pop(); // Layer table xmlFilerImpl.NewSubNodeAndInsert(layerTable.ClassName); layerTable.XmlOut(xmlFilerImpl); xmlFilerImpl.Pop(); } xmlFilerImpl.Pop(); xmlFilerImpl.Save(stream); }