Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

RSS


StrangerMX ©   (2007-03-26 13:10:00) 

Подскажите пожайлуста каким образом можно организовать чтение ленты новостей


VirEx   (2007-03-27 12:08:00) [1]

а вот пример шаблона:
<?xml version='1.0' encoding='windows-1251'?>
<xsl:stylesheet version="4.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"  xmlns=" http://www.w3.org/TR/xhtml1/strict">
<xsl:output method ="html" />
<xsl:template match="/">
   <HTML xmlns=" http://www.w3.org/TR/xhtml1/strict">
   <HEAD>
   <META http-equiv="Content-Type" content="text-html; charset=windows-1251" />
   </HEAD>

<!-- делаем верхнюю таблицу для заголовка -->
<TABLE style="WIDTH: 754px; HEIGHT: 83px" cellSpacing="1" cellPadding="1" width="754" align="top" border="0">
 <TBODY>
 <TR>
   <Td align="left" bgColor="#d6ba98">
    <font face="Tahoma" size="2">
    <center> <xsl:value-of select="//channel/title" /></center>
    <xsl:value-of select="//channel/description" /><br></br>
    <small><xsl:value-of select="//channel/link" /></small>
    </font>
   </Td>
 </TR>
 </TBODY>
</TABLE>

<!-- делаем таблицу для элементов, строки для которых будут автоматически генерироваться XLS'ом -->
<TABLE style="WIDTH: 754px; HEIGHT: 83px" cellSpacing="3" cellPadding="3" width="754" align="top" border="0">
 <TBODY>
    <!-- проходимся по всем элементам  item-->
    <xsl:for-each select="//channel/item">
      <TR>
        <TD align="left" bgColor="#ede1d3">
        <font face="Tahoma" size="2">
          <a href="{link}" title="{link}"><xsl:value-of select="title"/></a><br />
<xsl:value-of select="description" disable-output-escaping = "yes" />

        </font>
        </TD>
      </TR>
    </xsl:for-each>
 <TR>
   <TD align="left" bgColor="#e1cdb3">
   </TD>
 </TR>
 </TBODY>
</TABLE>

    </HTML>

 </xsl:template>

</xsl:stylesheet>


VirEx   (2007-03-27 12:05:00) [2]

выше пример - программная разборка XML, а лучше всего иметь несколько XSL шаблонов для оформления новостей:
uses
 comobj,....;

function CreateHTML(URL,XSLFileName):string;
var
 XMLDoc,XSLDoc:Variant;
 XMLIsLoad,XSLIsLoad:Boolean;
begin
Result:='';

CoInitialize(nil);
try
 //загружаем RSS
 XMLDoc:=CreateOleObject('Microsoft.XMLDOM');
 XMLDoc.async:=false;
 XMLDoc.validateOnParse:=false; //избавляемся от ошибок если в rss есть <!DOCTYPE
 XMLIsLoad:= XMLDoc.load(URL);
 XMLDoc.save(RSSxml);//сохраняем XML файл (RSS новости) для тех кто захочет изменить шаблон по своему вкусу...

 //загружаем шаблон XSL
 XSLDoc:=CreateOleObject('Microsoft.XMLDOM');
 XSLDoc.async:=false;
 XSLDoc.validateOnParse:=false;
 XSLIsLoad:=XSLDoc.Load(XSLFileName);

 //применяем шаблон к XML документу
 //получаем красиво оформленный HTML код
 Result:=string(XMLDoc.transformNode(XSLDoc));

except
end;

CoUninitialize;
end;


VirEx   (2007-03-27 11:52:00) [3]

http://code.progler.ru/view/243


Rouse_   (2007-03-27 09:32:00) [4]

... а потом распасить :)


Reindeer Moss Eater   (2007-03-26 13:20:00) [5]

прочитать с сервера как и любой другой www ресурс


Наверх

Титульная страница Поиск, карта сайта Написать письмо