Professional Documents
Culture Documents
Lr03 Tutorial ОП II (ПЛ)
Lr03 Tutorial ОП II (ПЛ)
Lr03 Tutorial ОП II (ПЛ)
№ 2 )
Функціонал застосунку
Програма міститиме графічний інтерфейс GUI з елементами керування процесом аналізу текстових
файлів формату .docx і .pdf та можливістю збереження результату аналізу.
(додайте за потреби)
2.1. Інсталюємо в проект open-source NuGet ( «New Get» ) пакет для роботи з файлами .docx, для
цього
. клікаємо
2.2. Аналогічно спробувати встановити NuGet пакет itext7 для роботи з файлами .pdf з
нескладною структурою.
2.3. Показати у звіті вміст вкладки Installed
. підтвердити додавання
. у Solution Explorer для нового файлу CodeFile1.cs через випадаюче меню змінити назву на
більш зрозумілу, наприклад, MyFunctions.cs, для цього
3.3. Підготувати файл MyFunctions.cs для занесення туди коду функцій, для цього
using System.IO;
using System.Text;
using Xceed.Document.NET;
using Xceed.Words.NET;
. Розміщуємо виклик просторів імен пакету itext7
using iText.Kernel.Font;
using iText.Kernel.Geom;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf.Canvas.Parser.Data;
using iText.Kernel.Pdf.Canvas.Parser.Filter;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
. В «тілі» опису Form1 підготуйте поки пусті описи функцій, які пізніше будуть призначені
кнопкам
Функції:
4.3. Позначити у звіті, в який RichTextBox буде завантажено текст файлу, а в який RichTextBox
буде виводитись report за пунктами аналізу.
if ( умова )
{
//команди;
}
//наступні команди;
викликати команду return; ( вихід з MyDocXOpen() ) , за умови, якщо користувач не обрав файлу
для відкриття (це убереже від помилок при виконанні програми).
. Запустити програму
. Створити змінну my_text типу String ( для збереження тексту з файлу .docx )
. Присвоїти змінній my_text результат функції " \n".PadLeft(100, ' ') , яка формує
великий пустий рядок ( необхідно для полегшення подальшого аналізу тексту )
тут за допомогою змінної s типу String з масиву new[] { …. } по черзі виконується вибір по одному елементу і
кожен додається до змінної а, як окремий абзац.
5.4. Призначити функцію MyDocXOpen() для кліку по пункту головного меню Open DOCX
. Створити змінну my_text типу String ( для збереження тексту з файлу .pdf )
. Присвоїти змінній my_text результат функції " \n".PadLeft(100, ' ') , яка формує
великий пустий рядок ( необхідно для полегшення подальшого аналізу тексту )
pdfDoc.Close();
6.4. Призначити функцію MyPDFOpen() для кліку по пункту головного меню Open PDF
6.6. Показати у звіті зображення вікна відкриття файлу та Form з виведеним текстом з файлу.
6.7. Спробувати різні .pdf файли, прості – лише з текстом, складні – з текстом та картинками,
маленькі файли та великі. У звіті розмістити інформацію про успішність відкриття різних типів
.pdf файлів.
. Показати у звіті, в якій змінній буде збережено ім’я файлу, введеного користувачем в
ВікніЗбереженняФайлу
. Показати у звіті до л.р., в якій змінній буде збережено ім’я файлу, введеного користувачем в
ВікніЗбереженняФайлу
if ( умова )
{
//команди;
}
//наступні команди;
. Якщо описаний if не спрацює, то значить ім’я файлу обрано і будуть виконуватись команди,
які описані далі
. Ознайомтесь з інформацією
де
\r - команда повернення каретки ( курсору друку )
\n - команда створення нового рядка
StringSplitOptions.RemoveEmptyEntries
StringSplitOptions.TrimEntries
StringSplitOptions.RemoveEmptyEntries|StringSplitOptions.TrimEntries
де
RemoveEmptyEntries – видалення пустих абзаців
TrimEntries – видалення абзаців, які лише з пробілів
або їх поєднання
return змінна_кількості_параграфів
15.8. Показати у звіті завантажений тестовий текст та фрагмент report про кількість
параграфів
16. ЗАВДАННЯ 16 – Опис функції визначення кількості речень
. Виконувати всі ті ж дії, як і для попереднього пункту з параграфами, але розділювачі тут
позначають останні символи в реченнях:
return змінна_кількості_речень
16.8. Показати у звіті завантажений тестовий текст та фрагмент report про кількість речень.
return змінна_кількості_слів
17.8. Показати у звіті завантажений тестовий текст та фрагмент report про кількість слів.
текстова_змінна.Replace("к", "*")
return змінна_кількості_символів
18.5. Запустити програму. Завантажити невеликий тестовий текст з одним, двома словами
з файлу.
Перевірити інструмент
18.8. Показати у звіті завантажений тестовий текст та фрагмент report про кількість символів
19. ЗАВДАННЯ 19 – Опис функції визначення кількості алфавітних символів - літер
! потрібно в циклі перебрати всі елементи ( символи ) тексту і перевірити їх на належність до алфавітних
використати функцію,
яка повертає true,
якщо символ є алфавітним
Char.IsLetter(змінна_символ)
return змінна_кількості_літер
19.8. Показати у звіті завантажений тестовий текст та фрагмент report про кількість літер