我正在构建一个小型软件,该软件应该生成graphml文件,以便随后使用yEd进行读取。这是一个使用节点和边构建图形的软件。
典型的“节点”如下所示
<node id="n0">
<data key="d6">
<y:ShapeNode>
<y:Geometry height="80.0" width="90.0" x="0.0" y="0.0"/>
<y:Fill color2="#993300" hasColor="false" transparent="false"/>
<y:BorderStyle color="#000000" type="line" width="1.0"/>
<y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="14" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="21.1513671875" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="43.6962890625" x="23.15185546875" xml:space="preserve" y="4.0">Boite1</y:NodeLabel>
<y:Shape type="diamond"/>
</y:ShapeNode>
</data>
</node>
我正在尝试通过C#编辑graphml文件。我要这样做的方法是在富文本框中打印行,然后将其保存到具有正确扩展名的文件中。
尽管我似乎无法在打印内容中打印引号,如下所示。 “ WriteLog”方法是我打印到富文本框中的方法。
WriteLog("<?xml version="1.0" encoding="UTF - 8" standalone="no"?>");
也许我不考虑另一种方式?我真的不熟悉xml。
答案 0 :(得分:0)
因为我确实需要一个接一个地添加节点,所以我必须经过一个富文本框,然后将其另存为.graphml
我只需要转义双引号\
我的行变成
WriteLog("<?xml version=\"1.0\" encoding=\"UTF - 8\" standalone=\"no\"?>");
感谢Panagiotis的帮助!我将尝试研究XDocument来找到比这更“清洁”的方式!