Поиск строки в файле с помощью c langauge - PullRequest
0 голосов
/ 02 ноября 2011

У меня проблема с концепцией FILEs на языке C.

Моя проблема в том, что у меня есть HTML-файл, и он был открыт в режиме чтения.

Мне нужно получить данные изэтот файл. Точность i между двумя строками.

Это строки "<Response>" и "</Response>".

Текстовый файл показан ниже.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



<html xmlns="http://www.w3.org/1999/xhtml">

<head><title>



</title></head>

<body>

    <form name="form1" method="post" action="pos_fis_transactions.aspx?trans=14%7c35381192%7c10-10-2011%7c1000.0%7c10-10-2011%7cCASH%7cCREDIT%7cc%7cGCC" id="form1">

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE3NDI1ODEyMjhkZKgy7LmL8WTr+VEeDUOifRqzISfa" />



<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAgLEypqSAQKez72pDln9yKosD6kd+LvgBmdrWkYoLk2u" />

    <div>



        <textarea name="txtTransAck" rows="2" cols="20" id="txtTransAck">**&lt;Response&gt;14|245&lt;/Response&gt;**</textarea>



    </div>

    </form>

</body>

</html>

В приведенном выше html-файле мне нужно выбрать данные 14 | 25.

Пожалуйста, помогите мне.

1 Ответ

2 голосов
/ 02 ноября 2011

Прежде всего вы ищете не <Response> и </Response>, а &lt;Resonse&gt; и &lt;/Resonse&gt;.

Если файл не слишком большой, загрузите его в память и выполните

strnstr( loadedFileContent, "&lt;Response&gt;", lengthOfLoadedFileContent );

Это дает вам указатель на первый символ & - теперь добавьте к этому strlen( "&lt;Response&gt;" ), и вы получите свой контент.

Теперь либо вы знаете длину своего контента и читаете его, либо ищите с этой позиции гнездо & и берете строку между ними.

НТН

Mario

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...