//public static string QuantidadePalavrasPorTutela(List<Tutela> ListaDeTutelas, List<string> BagOfWords) //{ // List<string> PalavrasDeUmaTutelaTemp = new List<string>(); // List<string> PalavrasDeUmaTutela = new List<string>(); // StringBuilder Relatorio = new StringBuilder(); // int Count; // string NomeTutelaAtual = String.Empty; // bool EstaNaTutelaBOW, IsTutelaNova = false; // Relatorio.Append("RELATORIO: QUANTIDADE DE PALAVRAS QUE SE REPETEM POR TUTELA\nQuantida de palavras sendo analisadas: " + BagOfWords.Count + "\n\n"); // foreach (string PalavraBagOfWords in BagOfWords) // { // Relatorio.Append("/****** PALAVRA SENDO ANALISADA: \"" + PalavraBagOfWords + "\" ******/ \n"); // foreach (Tutela tutela in ListaDeTutelas) // { // EstaNaTutelaBOW = false; // IsTutelaNova = false; // if (tutela.QuantPalavrasDaBOW == null) // { // IsTutelaNova = true; // tutela.QuantPalavrasDaBOW = new Dictionary<string, int>(); // } // Count = 0; // PalavrasDeUmaTutelaTemp = tutela.Texto.Split(' ').ToList(); // PalavrasDeUmaTutelaTemp = PalavrasDeUmaTutelaTemp.ConvertAll(d => d.ToUpper()); // PalavrasDeUmaTutela = RemovePontuacaoDeUmaListaDeString(PalavrasDeUmaTutelaTemp); // foreach (string palavra in PalavrasDeUmaTutela) // { // if (palavra.Equals(PalavraBagOfWords)) // Count++; // } // if (IsTutelaNova) // { // tutela.QuantPalavrasDaBOW.Add(PalavraBagOfWords, Count); // } // else // { // foreach (string word in tutela.QuantPalavrasDaBOW.Keys) // { // if (PalavraBagOfWords.Equals(word)) // { // EstaNaTutelaBOW = true; // break; // } // } // if (EstaNaTutelaBOW) // { // tutela.QuantPalavrasDaBOW[PalavraBagOfWords] = Count; // } // else // { // tutela.QuantPalavrasDaBOW.Add(PalavraBagOfWords, Count); // } // } // NomeTutelaAtual = tutela.Nome; // Relatorio.Append("Palavra \"" + PalavraBagOfWords + "\" foi encontrada " + Count + " vezes na tutela \"" + NomeTutelaAtual + "\"\n"); // } // Relatorio.Append("\n\n"); // } // return Relatorio.ToString(); //} public static double RealizaSimilaridade(Tutela tutela1, Tutela tutela2) { double Denominador = 0, Similaridade = 0, Raiz1 = 0, Raiz2 = 0; int Numerador = 0; var BOW = tutela1.QuantPalavrasDaBOW.Keys.ToList(); foreach (string PalavraDoBOW in BOW) { Numerador += tutela1.QuantPalavrasDaBOW[PalavraDoBOW] * tutela2.QuantPalavrasDaBOW[PalavraDoBOW]; } foreach (int value in tutela1.QuantPalavrasDaBOW.Values) { Raiz1 += Math.Pow(value, 2); } foreach (int value in tutela2.QuantPalavrasDaBOW.Values) { Raiz2 += Math.Pow(value, 2); } Denominador = Math.Sqrt(Raiz1) + Math.Sqrt(Raiz2); Similaridade = Numerador / Denominador; return(Similaridade); }
private void abrirToolStripMenuItem_Click(object sender, EventArgs e) { CheckedListTutelasLidas.Visible = false; Histograma.Visible = false; OpenFileDialog openFileDialog1 = new OpenFileDialog { Title = "Open the Word file: ", DefaultExt = "docx", Filter = "docx files(*.docx)|*.docx|doc files(*.doc)|*.doc|All files(*.*)|*.*" }; if (openFileDialog1.ShowDialog() == DialogResult.OK) { CaminhoDoDocumento = openFileDialog1.FileName; //wordDoc = new Word.Application(); //wordDoc.Visible = true; //Abre o arquivo no pc quando der o Open doc = Util.GerarInstanciaDocumento(CaminhoDoDocumento); } if (doc != null) { string TextoTutela = Util.RetornaOTextoDeUmArquivoDocx(doc, data); tutela = new Tutela(Path.GetFileName(CaminhoDoDocumento), CaminhoDoDocumento, TextoTutela); G_ListaDeTutelas.Add(tutela); TutelaDB.SalvaTutelaNoBanco(tutela); MessageBox.Show(TextoTutela); } }
public static void SalvaTutelaNoBanco(Tutela tutela) { BaseDB.RunSQLScript(@"INSERT INTO Tutela VALUES('" + tutela.Nome + "', '" + tutela.Caminho + "', '" + tutela.Texto + "', " + "NULL);" ); }
public static List <Tutela> RetornaTodosOsTextosDeArquivosDocx(string[] CaminhosDosDocumentos) { Tutela tutela = new Tutela(); List <Tutela> ListaDeTutelas = new List <Tutela>(); foreach (string caminho in CaminhosDosDocumentos) { if (Util.IsArquivoWord(caminho)) { tutela = new Tutela { Caminho = caminho, Nome = Path.GetFileName(caminho) }; ListaDeTutelas.Add(tutela); //MessageBox.Show(caminho); } } Word.Document doc; StringBuilder data = new StringBuilder(); foreach (Tutela T in ListaDeTutelas) { doc = Util.GerarInstanciaDocumento(T.Caminho); if (doc != null) { T.Texto = RetornaOTextoDeUmArquivoDocx(doc, data); } } return(ListaDeTutelas); }