0
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Xml;
public class XmlReader : MonoBehaviour
{
XmlDocument doc = new XmlDocument();
// Use this for initialization
void Start()
{
doc.Load(@"C:\Users\myxml\Documents\mysvg.svg");
XmlNode node = doc.DocumentElement.SelectSingleNode("/g");
foreach (XmlNode nodes in doc.DocumentElement.ChildNodes)
{
string text = nodes.InnerText; //or loop through its children as well
}
}
// Update is called once per frame
void Update()
{
}
}
私は、たとえば配列にそれぞれの子を解析するためにその後<g>
どのようにsvgのXMLファイルタイプを解析できますか?
下のすべての子を取得したい:
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<rect
style="opacity:1;fill:#00c8fc;fill-opacity:0.98823529;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4155"
width="45.714287"
height="30"
x="37.387959"
y="115.30345" />
<rect
style="opacity:1;fill:#00c8fc;fill-opacity:0.98823529;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4155-5"
width="45.714287"
height="30"
x="91.899246"
y="115.40621" />
だから私は、配列がRects
たぶんstring[] Rects;
次に、配列内の各Rectの下にパラメータを文字列としても持たせます:
Rect1
fill:#00c8fc
width="45.714287"
height="30"
x="37.387959"
y="115.30345"
この形式。
それでは、私はRECT1など彼のパラメータに別のスクリプトからのアクセス取得することができます。この場合 Rect1.width
...またはRect1.x
を.... Rect1.fill
....
xmlではないsvg htmlではありませんか? – jdweng
答えは、他のXMLファイルと同じ構文解析を行います。ここには数十もの同様の質問があります。 – miken32
[C#でXMLファイルを読み込んで解析するにはどうすればいいですか?](https://stackoverflow.com/questions/642293/how-do-i-read-and-parse-an-xml-file-in -c) – miken32