<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786820</guid>
        <pubDate>Tue, 01 Jan 2019 23:17:34 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786820</link>
        <description><![CDATA[dreyqq: Вопрос с передачей русского через MemoryStream решил<br>
Если ком поможет то вот:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp;srvZap:=tstringlist.Create;</div><div class="code_line">&nbsp;&nbsp;srvZap.Text:=ARequestInfo.Params.Text;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;zapStream:=TMemoryStream.Create;</div><div class="code_line">&nbsp;&nbsp;srvZap.SaveToStream(zapStream, Tencoding.UTF8); // вот так нормально принимает русский</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>dreyqq</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786365</guid>
        <pubDate>Thu, 27 Dec 2018 13:42:53 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786365</link>
        <description><![CDATA[Mr.Delphist: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=413926&view=findpost&p=3786362'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Gonarh &#064; <time class="tag-quote__quoted-time" datetime="2018-12-27T12:26:19+00:00">27.12.18, 12:26</time></span><div class='quote '>Далана, наличие БОМ не делает текстовик байтданными </div></div><br>
<br>
Да, метка BOM опциональна. Но для самого тела файла это не отменяет факта, что буква &quot;как бы текста&quot; будет представлена одним или несколькими байтами, смотрим хекс-дамп в предыдущем сообщении. А уж если в тексте появятся эмоджи-символы...]]></description>
        <author>Mr.Delphist</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786362</guid>
        <pubDate>Thu, 27 Dec 2018 12:26:19 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786362</link>
        <description><![CDATA[Gonarh: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=413926&view=findpost&p=3786303'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Mr.Delphist &#064; <time class="tag-quote__quoted-time" datetime="2018-12-26T22:55:39+00:00">26.12.18, 22:55</time></span><div class='quote '>Уже ж говорил в другом посте:<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Дело в том, что <strong class='tag-b'>XML - это не текст. Это байтовый поток</strong>, который для большинства случаев выглядит как текст.</div></div></div></div><br>
Далана, наличие БОМ не делает текстовик байтданными]]></description>
        <author>Gonarh</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786355</guid>
        <pubDate>Thu, 27 Dec 2018 11:29:19 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786355</link>
        <description><![CDATA[Fr0sT: В stringlist приходит в родной кодировке Дельфей, это utf16. соответственно и дальше идет она. Сохрани в файл и посмотри hex редактором, что там на самом деле.]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786303</guid>
        <pubDate>Wed, 26 Dec 2018 22:55:39 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786303</link>
        <description><![CDATA[Mr.Delphist: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=413926&view=findpost&p=3786162'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>dreyqq &#064; <time class="tag-quote__quoted-time" datetime="2018-12-25T23:54:01+00:00">25.12.18, 23:54</time></span><div class='quote '>Это уже вкурил. Вылезла следующая проблема...<br>
idhttp принимает запрос (с русским всё хорошо)<br>
создаю tstringlist и в него сохраняю мой запрос (тоже все хорошо. Для проверки сохраняю в файл)<br>
tstringlist сохраняю saveToStream (тоже все хорошо. Для проверки сохраняю в файл)<br>
xml.LoadFromStream ... и здесь начинается проблема. Если пришел xml без кириллицы то загружается нормально, но если есть хоть один символ кириллицы то не загружается и всё...<br>
<br>
Может подскажете как это победить? </div></div><br>
Уже ж говорил в другом посте:<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Дело в том, что <strong class='tag-b'>XML - это не текст. Это байтовый поток</strong>, который для большинства случаев выглядит как текст.</div></div><br>
<br>
Т.е. если взять вот это вот и сохранить как текстовый файл, оно НЕ прочитается ни одним вменяемым XML-парсером:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&#62;</div><div class="code_line">&#60;hamlet&#62;</div><div class="code_line">&nbsp;&nbsp; &nbsp;&#60;line&#62;Есть многое в природе, друг Горацио,&#60;/line&#62;</div><div class="code_line">&nbsp;&nbsp; &nbsp;&#60;line&#62;Что и не снилось нашим мудрецам.&#60;/line&#62;</div><div class="code_line">&#60;/hamlet&#62;</div></ol></div></div></div></div><br>
<br>
Первая реакция &quot;да что за нафик, все теги закрыты, чё за дела, братан&quot;.<br>
А на самом деле, правильный поток байтов для такого русскоязычного XML будет очень неочевидным. И это ещё не говоря про BOM-префикс, который может быть, а может и отсутствовать&#33; Вот он, подлец, первые три байта занимает, EF BB BF<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">0000000000: EF BB BF 3C 3F 78 6D 6C │ 20 76 65 72 73 69 6F 6E &nbsp;�››&#60;?xml version</div><div class="code_line">0000000010: 3D 22 31 2E 30 22 20 65 │ 6E 63 6F 64 69 6E 67 3D &nbsp;=&quot;1.0&quot; encoding=</div><div class="code_line">0000000020: 22 55 54 46 2D 38 22 3F │ 3E 0D 0A 3C 68 61 6D 6C &nbsp;&quot;UTF-8&quot;?&#62;♪◙&#60;haml</div><div class="code_line">0000000030: 65 74 3E 0D 0A 20 20 20 │ 20 3C 6C 69 6E 65 3E D0 &nbsp;et&#62;♪◙ &nbsp; &nbsp;&#60;line&#62;Е</div><div class="code_line">0000000040: 95 D1 81 D1 82 D1 8C 20 │ D0 BC D0 BD D0 BE D0 B3 &nbsp;›с›т›ь› м›н›о›г›</div><div class="code_line">0000000050: D0 BE D0 B5 20 D0 B2 20 │ D0 BF D1 80 D0 B8 D1 80 &nbsp;о›е› в› п›р›и›р›</div><div class="code_line">0000000060: D0 BE D0 B4 D0 B5 2C 20 │ D0 B4 D1 80 D1 83 D0 B3 &nbsp;о›д›е›, д›р›у›г›</div><div class="code_line">0000000070: 20 D0 93 D0 BE D1 80 D0 │ B0 D1 86 D0 B8 D0 BE 2C &nbsp; Г›о›р›а›ц›и›о›,</div><div class="code_line">0000000080: 3C 2F 6C 69 6E 65 3E 0D │ 0A 20 20 20 20 3C 6C 69 &nbsp;&#60;/line&#62;♪◙ &nbsp; &nbsp;&#60;li</div><div class="code_line">0000000090: 6E 65 3E D0 A7 D1 82 D0 │ BE 20 D0 B8 20 D0 BD D0 &nbsp;ne&#62;Ч›т›о› и› н›е</div><div class="code_line">00000000A0: B5 20 D1 81 D0 BD D0 B8 │ D0 BB D0 BE D1 81 D1 8C &nbsp;› с›н›и›л›о›с›ь›</div><div class="code_line">00000000B0: 20 D0 BD D0 B0 D1 88 D0 │ B8 D0 BC 20 D0 BC D1 83 &nbsp; н›а›ш›и›м› м›у›</div><div class="code_line">00000000C0: D0 B4 D1 80 D0 B5 D1 86 │ D0 B0 D0 BC 2E 3C 2F 6C &nbsp;д›р›е›ц›а›м›.&#60;/l</div><div class="code_line">00000000D0: 69 6E 65 3E 0D 0A 3C 2F │ 68 61 6D 6C 65 74 3E &nbsp; &nbsp; ine&#62;♪◙&#60;/hamlet&#62;</div></ol></div></div></div></div>]]></description>
        <author>Mr.Delphist</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786297</guid>
        <pubDate>Wed, 26 Dec 2018 21:02:21 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786297</link>
        <description><![CDATA[dreyqq: Отправляю на idhttpserver в кодировке UTF8, для этого перед отправкой запроса, на IDHTTP включаю<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">const</div><div class="code_line">&nbsp;&nbsp;CONT_TYPE=&#39;application/x-www-form-urlencoded&#39;;</div><div class="code_line">&nbsp;&nbsp;SHR_SET=&#39;utf-8&#39;; </div><div class="code_line">&nbsp;&nbsp;...</div><div class="code_line">begin</div><div class="code_line">&nbsp;http1.Request.ContentType :=CONT_TYPE;</div><div class="code_line">&nbsp;http1.Request.Charset :=SHR_SET;</div><div class="code_line">&nbsp;...</div></ol></div></div></div></div><br>
После этого русский от клиента к серверу идет нормально (на эту тему я писал <a class='tag-url' href='https://forum.sources.ru/index.php?showtopic=413886&hl=' target='_blank'>здесь</a>)<br>
<br>
Русский по http идет нормально, удачно сохраняется в tstringlist и затем в TMemoryStream, а вот уже из tmemorystream <br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;txmldocument.loadfromstream(stream)... // вот здесь ошибка если есть русский</div></ol></div></div></div></div><br>
<br>
Может <strong class='tag-b'>Fr0sT</strong> подскажешь как принудительно в моём случае сохранить сначала TStringlist , а затем и TMemoryStream в кодировке UTF8]]></description>
        <author>dreyqq</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786211</guid>
        <pubDate>Wed, 26 Dec 2018 12:39:21 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786211</link>
        <description><![CDATA[Fr0sT: Попробуй сохранять xml в utf8.]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786162</guid>
        <pubDate>Tue, 25 Dec 2018 23:54:01 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786162</link>
        <description><![CDATA[dreyqq: Это уже вкурил. Вылезла следующая проблема...<br>idhttp принимает запрос (с русским всё хорошо)<br>создаю tstringlist и в него сохраняю мой запрос (тоже все хорошо. Для проверки сохраняю в файл)<br>tstringlist сохраняю saveToStream (тоже все хорошо. Для проверки сохраняю в файл)<br>xml.LoadFromStream ... и здесь начинается проблема. Если пришел xml без кириллицы то загружается нормально, но если есть хоть один символ кириллицы то не загружается и всё...<br><br>Может подскажете как это победить?]]></description>
        <author>dreyqq</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786066</guid>
        <pubDate>Mon, 24 Dec 2018 08:35:49 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786066</link>
        <description><![CDATA[Fr0sT: SaveTo/LoadFromStream?]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786002</guid>
        <pubDate>Fri, 21 Dec 2018 22:27:36 +0000</pubDate>
        <title>idhttp, idhttpserver, txmldocument</title>
        <link>https://forum.sources.ru/index.php?showtopic=413926&amp;view=findpost&amp;p=3786002</link>
        <description><![CDATA[dreyqq: Работаю над клиент-серверным приложением<br>Подскажите как правильно отправить в POST запросе готовый TXMLdocument и как правильно его принять и обработать на стороне сервера, а точнее как правильно из принятого запроса IDhttpServer загрузить данные в TXMLdocument для дальнейшей обработки (желательно SaveToFile и LoadFromFile не использовать)]]></description>
        <author>dreyqq</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	