Wykorzystanie pobranego tekstu z właściwości InnerText

0

Cześć!

Jestem początkująca w programowaniu.
Potrzebowałabym Waszej rady odnośnie możliwości wykorzystania pozyskanych danych z pliku .xml za pomocą XMLNode.InnerText.
Udało mi się pobrać łańcuch znaków z pliku .xml tą metodą. Kod, którym udało mi się to wykonać jest następujący:

XmlDocument xtr = new XmlDocument();
string fileName = OFD.FileName;
FileInfo fileInfo = new FileInfo(fileName);
string directoryFullPath = fileInfo.DirectoryName;
fileName = Path.Combine(directoryFullPath, "info.xml");
xtr.Load(fileName);
XmlNodeList list = xtr.GetElementsByTagName("SequenceInfo");

Zgodnie z powyższym kodem, pobrałam dane tekstowe z pliku 'info.xml' i przypisałam je do obiektu 'xtr'.
"SequenceInfo" to tag z pliku .xml.
Przykładowa zawartość pliku .xml:

<SequenceInfo HasSmoke="" Azimuth="267.2" Inclination="682" Zoom="10329" TowerName="Makoszka" Time="2015-03-18 13:10:22">
  <Horizon>316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,320,320,320,321,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,324,324,324,324,324,324,324,326,326,326,326,326,326,326,326,324,324,322,322,322,322,322,322,322,322,322,322,322,322,323,324,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,324,324,322,322,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320</Horizon>
</SequenceInfo>

Natomiast to, co uzyskałam to ciąg tekstu:
316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,316,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,318,320,320,320,321,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,322,324,324,324,324,324,324,324,326,326,326,326,326,326,326,326,324,324,322,322,322,322,322,322,322,322,322,322,322,322,323,324,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,326,324,324,322,322,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320,320

która jest przechowywana we właściwości InnerText.

I teraz bardzo ważne dla mnie pytanie.
Znacie sposób na przypisanie tych danych, jako współrzędnych'Y' punktu (w tym wypadku piksela na zdjęciu)? Mam tutaj na myśli, iż zgodnie z powyższą zawartością pliku .xml, punkt pierwszy będzie mieć wartość (0,316), następny (1,316) itd? Współrzędne x już sama pokombinuję, ale ze współrzędnymi y (pobranym ciągiem znaków z pliku xml) potrzebowałabym Waszych wskazówek.

Z góry dziękuję za pomoc :)

1

Nie do końca zrozumiałem, czy o to chodzi, ale możesz po prostu ten tekst oddzielany przecinkami rozdzielić względem nich:

var punkty = innerText.Split(',');

I dostajesz tablicę, gdzie punkty[0] to 316, punkty[1] to 316 i tak dalej.

0
Ktos napisał(a):

Nie do końca zrozumiałem, czy o to chodzi, ale możesz po prostu ten tekst oddzielany przecinkami rozdzielić względem nich:

var punkty = innerText.Split(',');

I dostajesz tablicę, gdzie punkty[0] to 316, punkty[1] to 316 i tak dalej.

Oooo hehe no tak faktycznie :D. Prosta sprawa można powiedzieć. Dzięki!
Teraz pozostaje mi te wartości przyporządkować jako współrzędne Y dla kolejnych punktów.

Dziękuję :)

0

Problem rozwiązany :)

XmlDocument xtr = new XmlDocument();
            string fileName = OFD.FileName;
            FileInfo fileInfo = new FileInfo(fileName);
            string directoryFullPath = fileInfo.DirectoryName;
            fileName = Path.Combine(directoryFullPath, "info.xml");
            xtr.Load(fileName);
            XmlNodeList list = xtr.GetElementsByTagName("SequenceInfo");
            string[] punkty = xtr.InnerText.Split(',');
            List<Point> punkty1 = new List<Point>();
            for (int i = 0; i < punkty.Length; i++)
            {
                punkty1.Add(new Point { X = i, Y = int.Parse(punkty[i])});
            }

1 użytkowników online, w tym zalogowanych: 0, gości: 1