Я пытаюсь найти в Html-файле список слов или фраз и записать файл обратно с добавленными html-тегами вокруг этих слов / фраз.Остальная часть файла должна оставаться как есть.Я не знаю, как обойти ситуацию, когда фраза разбита на две строки.Кто-нибудь может помочь?Я новичок в этом, поэтому, пожалуйста, будьте явными в своем ответе.
Вот часть входного файла: (теги HTML p находятся в другой строке)
<p>
The thousand injuries of Fortunato I had borne as I best could, but
when he ventured upon insult, I vowed revenge. You, who so well know
the nature of my soul, will not suppose, however, that I gave utterance
to a threat. <i>At length</i> I would be avenged; this was a point definitely
и воткод на данный момент:
//get the table of words
DataTable table = LibraryAccess.GetWords(titleID);
using (StreamReader streamReader = File.OpenText(fileUploadPath))
{
inputString = streamReader.ReadToEnd();
streamReader.Close();
textCopy.Append(inputString);
}
if (inputString != null)
{
inputString = inputString.ToUpper();
foreach (DataRow r in table.Rows)
{
searchWord = (r["Word"].ToString()).ToUpper();
wordLength = searchWord.Length;
foundIndex = inputString.IndexOf(searchWord);
//if (foundIndex >= 0)
//{
//Use the Stringbuilder to modify the output file, e.g. add Bold tags
//around the word/expression
//}
foundIndex = -1;
}
}
else
{
Response.Write("input string is empty");
}
}
Слово, которое я ищу, это «дал высказывание» В исходном файле после высказывания есть CRLF, поэтому Indexof не находит Слово.Я мог бы легко заменить CRLF на пустой, но мне нужно поместить их обратно в файл, когда я выписываю измененную версию.Я не знаю, как их сохранить.
Есть мысли о том, как сделать это эффективно?Я хочу сделать для различных длин файлов.Первоначально я делал это с ReadLIne (), и предпочел бы это по причинам памяти, но столкнулся с той же проблемой.Спасибо