Esempio n. 1
0
        private static void Main(string[] args)
        {
            Concordance c = new Concordance("input.txt");
            c.Print();
            c.WriteToFile("output.txt");

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            string textFilePath    = ConfigurationManager.AppSettings["TextFilePath"];
            string alhabetFilePath = ConfigurationManager.AppSettings["AlphabetFilePath"];

            ConcordanceCreater concordanceCreater = new ConcordanceCreater(alhabetFilePath);
            //int N - count of string in one page
            Concordance concordance = concordanceCreater.CreateConrcondance(textFilePath, 5);

            concordance.SaveToFile();
            concordance.Print();

            Console.ReadKey();
        }
 public static void Print(this Concordance concordance)
 {
     Console.WriteLine("Concordance:");
     foreach (char mainLetter in concordance.Items.Keys)
     {
         if (concordance[mainLetter].Values.Count != 0)
         {
             Console.WriteLine(mainLetter);
             foreach (var items in concordance[mainLetter])
             {
                 Console.WriteLine("{0}..........{1}: {2}",
                                   items.Key, items.Value.Count, items.Value.PageNumbersToString());
             }
         }
     }
 }
        static void Main(string[] args)
        {
            //start
            try
            {
                string             textFilePath       = ConfigurationManager.AppSettings["TextFilePath"];
                string             alhabetFilePath    = ConfigurationManager.AppSettings["AlphabetFilePath"];
                ConcordanceCreater concordanceCreater = new ConcordanceCreater(alhabetFilePath);
                Concordance        concordance        = concordanceCreater.CreateConrcondance(textFilePath, 4); //int N - count of string in one page
                concordance.SaveToFile();
            }
            catch (Exception e)
            {
                Console.WriteLine("ERROR: " + e.Message);
            }

            Console.ReadKey();
        }
Esempio n. 5
0
 static void Main(string[] args)
 {
     string fileName = ConfigurationManager.AppSettings["InputFileName"];
     var separators = ConfigurationManager.AppSettings["Separators"].ToList();
     Reader reader = new Reader(new StreamReader(fileName), separators);
     IText text = reader.Read(5);
     IConcordance concordance = new Concordance(text);
     Console.WriteLine(concordance.GetResultString());
     fileName = ConfigurationManager.AppSettings["ConcordanceFileName"];
     Console.WriteLine(concordance.Write(new StreamWriter(fileName), 50)
         ? "Writing file is successful!" : "Writing file is falid!");
     ISubjectIndex subjectIndex = new SubjectIndex(concordance);
     Console.WriteLine(subjectIndex.GetResultString());
     fileName = ConfigurationManager.AppSettings["SubjectIndexFileName"];
     Console.WriteLine(subjectIndex.Write(new StreamWriter(fileName), 50)
         ? "Writing file is successful!" : "Writing file is failed!");
     Console.ReadKey();
 }
Esempio n. 6
0
        static void Main(string[] args)
        {
            List <KeyValuePair <string, int> > source = new List <KeyValuePair <string, int> >();

            Random random = new Random();

            for (int i = 0; i < 10000000; i++)
            {
                source.Add(
                    new KeyValuePair <string, int>((i % 1000).ToString(),
                                                   random.Next()));
            }


            {
                var c = new Concordance <string, int>(
                    new SortedDictionary <string, ConcordanceItem <string, int> >()
                    );

                c.Build(source.AsParallel());
            }
        }
Esempio n. 7
0
        public static void Main(string[] args)
        {
            var sourceFile      = ConfigurationManager.AppSettings["sourceFile"];
            var destinationFile = ConfigurationManager.AppSettings["destinationFile"];

            try
            {
                using (var reader = new StreamReader(sourceFile))
                {
                    var fileReader  = new CustomReader(10);
                    var builder     = new SentenceBuilder();
                    var sentences   = new List <Sentence>(0);
                    var pageBuilder = new PageBuilder(5);
                    while (fileReader.Read(reader) != 0)
                    {
                        while (builder.ExtractSentence(fileReader))
                        {
                            sentences.Add(builder.Build());
                        }
                    }

                    var text        = new Text(sentences);
                    var concordance = new Concordance();
                    concordance.Fill(text, pageBuilder.Build(text));

                    IPrinter printer = new FilePrinter(destinationFile);
                    printer.Print(concordance);
                }
            }
            catch (FileNotFoundException e)
            {
                Logger.Error($"File {e.FileName} is not found: {e.Message}");
            }
            catch (ArgumentException e)
            {
                Logger.Error($"Wrong argument: {e.Message}");
            }
        }
Esempio n. 8
0
 public void Print(Concordance concordance)
 {
     try
     {
         using (var writer = new StreamWriter(_fileName, false))
         {
             foreach (var t in concordance.Entries)
             {
                 writer.WriteLine($"{t.Word.Value, -20}{t.Frequency}: {string.Join(",", t.Lines)}");
             }
         }
     }
     catch (UnauthorizedAccessException e)
     {
         Logger.Error($"Access is denied: {e.Message}");
     }
     catch (ArgumentException e)
     {
         Logger.Error($"Incorrect names in path: {e.Message}");
     }
     catch (DirectoryNotFoundException e)
     {
         Logger.Error($"Directory not found: {e.Message}");
     }
     catch (PathTooLongException e)
     {
         Logger.Error($"Path or file name is too long: {e.Message}");
     }
     catch (IOException e)
     {
         Logger.Error($"Incorrect path: {e.Message}");
     }
     catch (SecurityException e)
     {
         Logger.Error($"Something error in security: {e.Message}");
     }
 }
Esempio n. 9
0
        static void Main(string[] args)
        {
            try
            {
                IText        text              = new Text();
                IConcordance concordance       = new Concordance();
                var          concordanceParser = new ConcordanceParser();
                var          configuration     = new GlobalConfiguration();

                if (args.Length != 0)
                {
                    configuration.FileNames = args;
                }
                else
                {
                    using var reader = new StreamReader("../../../config.json");
                    var json = reader.ReadToEnd();
                    configuration = JsonConvert.DeserializeObject <GlobalConfiguration>(json);
                }


                foreach (var fileName in configuration.FileNames)
                {
                    using var stream = new StreamReader(new FileStream(fileName, FileMode.Open));
                    var textParser = new TextParser();
                    var textReader = new TextModelReader(stream);
                    text = textParser.ParseText(textReader.ReadAllText());
                }

                foreach (var fileName in configuration.FileNames)
                {
                    using var stream = new StreamReader(new FileStream(fileName, FileMode.Open));
                    var textParser = new TextParser();
                    var textReader = new TextModelReader(stream);
                    concordance = concordanceParser.ParseText(textReader.ReadAllText());
                }

                var jsonText = JsonTextSerializer.Serialize(text);
                var jsonConc = JsonTextSerializer.Serialize(concordance);

                using (var writer = new StreamWriter("../../../text.json"))
                {
                    var textModelWriter = new TextModelWriter(writer);
                    textModelWriter.Write(jsonText);
                }

                using (var writer = new StreamWriter("../../../concordance.json"))
                {
                    var textModelWriter = new TextModelWriter(writer);
                    textModelWriter.Write(jsonConc);
                }
                Console.WriteLine();
                Console.WriteLine("----Select words from question sentences with length 10------------------------");
                Console.WriteLine();
                foreach (var word in text.GetWordsFromQuestionSentences(10))
                {
                    Console.WriteLine(word);
                }
                Console.WriteLine();
                Console.WriteLine("----Order sentences by words count-------------------------");
                Console.WriteLine();
                foreach (var sentence in text.OrderSentencesByWordsCount())
                {
                    Console.Write(sentence);
                    Console.Write(" --- ");
                    Console.Write($"{sentence.WordsCount} words");
                    Console.WriteLine();
                }
                Console.WriteLine();
                Console.WriteLine("-----Deleting words with length 10--------------");
                Console.WriteLine();
                text.DeleteWords(10);
                foreach (var sentence in text.Sentences)
                {
                    Console.WriteLine(sentence);
                }
                Console.WriteLine();
                Console.WriteLine("-----Replacing words: \"In\" replace by \"In word replaced\"----------------");
                Console.WriteLine();
                text.ReplaceWord("In", "In word replaced");
                foreach (var sentence in text.Sentences)
                {
                    Console.WriteLine(sentence);
                }

                Console.WriteLine("------------------------------------");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }