Código:
use una clase MRI string total = file.ReadToEnd(); List<string> grande = total.Split('\n').ToList(); total = ""; StopWord stopWord = new StopWord(); Documento docu; int posp = 0; string[] s; System.IO.StreamWriter asa; List<string> listaPalabras; for (int i = 0; i < grande.Count; i++) { s = grande[i].Split('.'); docu = new Documento(); docu.titulo = s[0]; listaPalabras = s[1].Split(' ').ToList(); foreach (var items in listaPalabras) { if (!stopWord.isStopWord(items.ToString())) { docu.palabras.Add(posp, Stermin.Stem(items.ToString())); posp++; } } fichero.Add(id, docu); id++; asa = new System.IO.StreamWriter(i.ToString() + ".txt"); asa.WriteLine(s[0]); asa.WriteLine(s[1]); asa.Close(); }
Código:
y una Documentopublic class MRI { Hashtable ficher = new Hashtable(); public void Add(int id, Documento docu) { this.ficher.Add(id,docu); } }
Código:
Todo este bateo es para ganar en rendimiento pero se tarda cerca de 1mn en crear todos los documentos namespace MRI_Vectorial { public class Documento { public string titulo = ""; public Hashtable palabras = new Hashtable(); public double peso = 0; } }
Los documentos estan compuestos por un titulo seguidos por un punto y a continuacion el contenido seguido por un \n y asi sucesivamente 20000 veces
Les pido que me sujieran una estructura eficiente de implementacion en c#