public bool Remove(string palabra) { string text = palabra.Trim().ToLower(); Tokenizer tokenizer = Tokenizer.FromString(text, 3, true); FraseSinonimo fraseSinonimo = new FraseSinonimo(); fraseSinonimo.SetNormalized(tokenizer.ToArray(), new string[] { "a" }); for (int i = 0; i < this.Frases.Count; i++) { FraseSinonimo fraseSinonimo2 = this.Frases[i]; if (fraseSinonimo2.EqualsFrase(fraseSinonimo.Frase)) { this.Frases.RemoveAt(i); break; } } XmlNode xmlNode = null; foreach (XmlNode xmlNode2 in this.Root.ChildNodes) { if (xmlNode2.NodeType == XmlNodeType.Element && xmlNode2.Name.ToLower() == "sinonimo") { foreach (XmlAttribute xmlAttribute in xmlNode2.Attributes) { if (xmlAttribute.Name.ToLower() == "palabra" && xmlAttribute.Value.ToLower().Trim() == text) { xmlNode = xmlNode2; break; } } } if (xmlNode != null) { break; } } if (xmlNode != null) { this.Root.RemoveChild(xmlNode); } this.Doc.Save(this.Filename); return(true); }
private void ParseXml() { this.Frases = new List <FraseSinonimo>(); this.Doc.Load(this.Filename); foreach (XmlNode xmlNode in this.Doc.ChildNodes) { if (xmlNode.Name.ToLower() == "sinonimos") { this.Root = xmlNode; } } if (this.Root == null) { throw new XmlException("No existe el nodo raiz 'sinonimos' "); } foreach (XmlNode xmlNode in this.Root.ChildNodes) { if (xmlNode.NodeType == XmlNodeType.Element && xmlNode.Name.ToLower() == "sinonimo") { string text = null; string text2 = null; foreach (XmlAttribute xmlAttribute in xmlNode.Attributes) { if (xmlAttribute.Name.ToLower() == "palabra") { text = xmlAttribute.Value.ToLower().Trim(); } else { if (xmlAttribute.Name.ToLower() == "equivalencia") { text2 = xmlAttribute.Value.ToLower().Trim(); } } } if (!string.IsNullOrEmpty(text) && !string.IsNullOrEmpty(text2)) { Tokenizer tokenizer = Tokenizer.FromString(text, 3, true); Tokenizer tokenizer2 = Tokenizer.FromString(text2, 3, true); FraseSinonimo fraseSinonimo = new FraseSinonimo(); fraseSinonimo.SetNormalized(tokenizer.ToArray(), tokenizer2.ToArray()); this.Frases.Add(fraseSinonimo); } } } }
public bool Add(string palabra, string equivalencia) { string text = palabra.Trim().ToLower(); string text2 = equivalencia.Trim().ToLower(); Tokenizer tokenizer = Tokenizer.FromString(text, 3, true); Tokenizer tokenizer2 = Tokenizer.FromString(text2, 3, true); FraseSinonimo fraseSinonimo = new FraseSinonimo(); fraseSinonimo.SetNormalized(tokenizer.ToArray(), tokenizer2.ToArray()); this.Frases.Add(fraseSinonimo); XmlNode xmlNode = this.Doc.CreateElement("sinonimo"); XmlAttribute xmlAttribute = this.Doc.CreateAttribute("palabra"); xmlAttribute.Value = text.ToLower(); XmlAttribute xmlAttribute2 = this.Doc.CreateAttribute("equivalencia"); xmlAttribute2.Value = text2.ToLower(); xmlNode.Attributes.Append(xmlAttribute); xmlNode.Attributes.Append(xmlAttribute2); this.Root.AppendChild(xmlNode); this.Doc.Save(this.Filename); return(true); }