Witam,mam problem.
Tworze plik XML(500 losowych osób) .
Kody poniżej:
I teraz tak,mam plik z 500 osobami i chciałbym teraz wyrzucić z tej listy osoby które się powtarzają(pomijając id).
Czyli nie chce aby powtórzyła się osoba np:
Jan Kowalski 22
Jan Kowalski 22
22 to wiek.
Jak mogę tego dokonać w możliwie najprostszy sposób?
private void button1_Click(object sender, EventArgs e)
{
button2.Visible = true;
string[] Imie = { "Mariusz", "Mikołaj", "Przemek", "Krzysiek", "Patryk", "Janusz", "Lechu" };
string[] Nazwisko = { "Heler", "Kowal", "Nowak", "Kowalski", "Dul", "Paleta", "Kawka" };
Random losuj = new Random();
XmlTextWriter writer = new XmlTextWriter("osoby.xml", System.Text.Encoding.UTF8);
writer.WriteStartDocument(true);
writer.Formatting = Formatting.Indented;
writer.Indentation = 2;
writer.WriteStartElement("Osoby");
for (int i = 0; i < 500; i++)
{
createNode(i.ToString(), Imie[losuj.Next(0, 7)], Nazwisko[losuj.Next(0, 7)], losuj.Next(1, 50).ToString(), writer);
}
writer.WriteEndElement();
writer.WriteEndDocument();
writer.Close();
MessageBox.Show("Utworzono plik XML ! ");
}
private void createNode(string pID, string pName, string pSurname, string pAge, XmlTextWriter writer)
{
writer.WriteStartElement("Osoba");
writer.WriteStartElement("Id");
writer.WriteString(pID);
writer.WriteEndElement();
writer.WriteStartElement("Imie");
writer.WriteString(pName);
writer.WriteEndElement();
writer.WriteStartElement("Nazwisko");
writer.WriteString(pSurname);
writer.WriteEndElement();
writer.WriteStartElement("Wiek");
writer.WriteString(pAge);
writer.WriteEndElement();
writer.WriteEndElement();
}
Plik XML wygląda tak:
<Osoby>
<Osoba>
<Id>1</Id>
<Imie>Jan</Imie>
<Nazwisko>Kowalski</Nazwisko>
<Wiek>23</Wiek>
</Osoba>
.
.(Kolejne osoby ....)
.
<Osoba>
<Id>500</Id>
<Imie>Marek</Imie>
<Nazwisko>Nowak</Nazwisko>
<Wiek>37</Wiek>
</Osoba>
</Osoby>