Создать программу, создающую корректный HTML файл, содержащий весь текст из файла - C#
Формулировка задачи:
Здравствуйте помогите реализовать задание!
ОСНОВНОЕ ЗАДАНИЕ (суть задания):
Имеется два входных файла – файл_с_текстом и файл_словаря. Файл_с_текстом содержит текст в виде последовательностей текстовых строк, разделенных стандартным разделителем строки. Файл_словаря содержит произвольное количество строк, каждая из которых содержит ровно одно слово.
Пример файла_с_текстом:
----НАЧАЛО ФАЙЛА----
Файл_с_текстом содержит текст
в виде последовательностей строк,
разделенных стандартным разделителем
строки. Файл_с_текстом содержит текст
в виде последовательностей строк,
разделенных стандартным разделителем строки.
----КОНЕЦ ФАЙЛА----
Пример файла_словаря:
----НАЧАЛО ФАЙЛА----
текст
виде
изображение
файл
----КОНЕЦ ФАЙЛА----
Необходимо создать программу, создающую корректный HTML_файл, содержащий весь текст из файла_с_текстом в котором помечены жирным и наклонным шрифтом все слова из файла_словаря. HTML_файл должен отображаться в любом Internet-браузере (IE, Firefox, Chrome и др.) корректно, показывая весь текст, с выделением указанных слов.
Пример отображения HTML_файла в окне произвольного браузера (на основе примера выше):
----НАЧАЛО ВЫВОДА ----
Файл_с_текстом содержит текст
в виде последовательностей строк,
разделенных стандартным разделителем
строки. Файл_с_текстом содержит
текст в виде последовательностей строк,
разделенных стандартным разделителем строки.
----КОНЕЦ ВЫВОДА ----
Решение задачи: «Создать программу, создающую корректный HTML файл, содержащий весь текст из файла»
textual
Листинг программы
using System;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
Console.Write("Text path:");
var pathText = Console.ReadLine();
if (!File.Exists(pathText))
{
Console.WriteLine("File with text is not found!");
Console.ReadKey(true);
return;
}
Console.Write("Dictionary path:");
var dictPath = Console.ReadLine();
if (!File.Exists(dictPath))
{
Console.WriteLine("File with dictionary is not found!");
Console.ReadKey();
return;
}
var words = File.ReadLines(dictPath,Encoding.Default).Select(i=>i.Trim()).ToArray();
string result = "";
using (var reader=new StreamReader(pathText,Encoding.Default))
{
while (!reader.EndOfStream)
{
var w = reader.ReadLine().Split(new string[] {" "}, StringSplitOptions.RemoveEmptyEntries).ToArray();
for (int i = 0; i < w.Length; i++)
{
if (words.Contains(w[i]))
{
result += @"<b><i>" + w[i] + "</i></b>"+" ";
}
else
{
result += w[i] + " ";
}
}
result += "<br/>";
}
}
string header = @"<!DOCTYPE html>
<html>
<head>
<title>Working with files</title>
<meta http-equiv=""content-type"" content=""text/html; charset=windows-1251"" />
</head>
<body>
<div style=""margin:30px"">
<p>"+result+@"</p>
</div>
</body>
</html> ";
File.WriteAllText("default.html",header,Encoding.Default);
Process.Start("default.html");
}
}
}