RSS2.0を作りこむ。

以下のコードを参考にVB.NETに移植させていただきました。
Create a valid RSS 2.0 document using XmlTextWriter
By Daniel Bright
http://www.codeproject.com/aspnet/RSSviaXmlTextWriter.asp

<%@ Page Language="VB" EnableViewState="false"  Debug="true" %>
<%@ Import Namespace="System.Diagnostics" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Xml" %>
<script runat="server">
'以下のコードを参考にさせていただきました。
'Create a valid RSS 2.0 document using XmlTextWriter
'By Daniel Bright 
'http://www.codeproject.com/aspnet/RSSviaXmlTextWriter.asp
'--------------------------------------------------------------------------------------------------
'RSS初期処理:エレメントを準備します。
public function WriteRSSPrologue(writer as XmlTextWriter )as XmlTextWriter 

	writer.Formatting = Formatting.Indented	'http://support.microsoft.com/default.aspx?scid=kb;ja;301282
	writer.WriteStartDocument()
	writer.WriteStartElement("rss")
		writer.WriteAttributeString("version","2.0")
		writer.WriteAttributeString("xmlns:blogChannel", "http://127.0.0.1/My%20blogChannel")
		writer.WriteStartElement("channel")
			writer.WriteElementString("title","RSSのテストですよ")
			writer.WriteElementString("link","http://127.0.0.1/Link%20To")
			writer.WriteElementString("description", "RSSのテストなのでいろいろ書き換えてみてください。")
			writer.WriteElementString("copyright","C# Original Copyright 2002-2003 By Daniel Bright")
			writer.WriteElementString("copyright","VB Version Copyright 2004 By Moo")
			writer.WriteElementString("generator","RSSviaXmlTextWriter v1.0vb")

	return writer
end function
'--------------------------------------------------------------------------------------------------
'RSS主処理:エレメントを1件追加します。
public function	AddRSSItem(writer as XmlTextWriter , _
         sItemTitle as string , sItemLink as string , _
         sItemDescription as string ) as  XmlTextWriter 
         
	writer.WriteStartElement("item")
		writer.WriteElementString("title",sItemTitle)
		writer.WriteElementString("link",sItemLink)
		writer.WriteElementString("description",sItemDescription)
		writer.WriteElementString("pubDate", DateTime.Now.ToString("r"))
	writer.WriteEndElement()

	return writer
end function
'--------------------------------------------------------------------------------------------------
'RSS後処理:エレメントを閉じてドキュメントを終了させます。
public function  WriteRSSClosing( writer as XmlTextWriter)as XmlTextWriter 

	writer.WriteEndElement()'channel
	writer.WriteEndElement()'rss
	writer.WriteEndDocument()

	return writer
end function
'--------------------------------------------------------------------------------------------------
public sub Page_Load(sender as object ,e as System.EventArgs)

	dim  writer as XmlTextWriter = new XmlTextWriter(Response.OutputStream, System.Text.Encoding.UTF8)  

	WriteRSSPrologue(writer)

    Dim MyFileName = Dir("x:\juke\*.*")

    'すべてのファイル名を列挙する
    Do While MyFileName <> ""
		AddRSSItem(writer,MyFileName, "http://127.0.0.1/" & MyFileName, MyFileName)
        MyFileName = Dir()   ' Get next entry.
    Loop

	WriteRSSClosing(writer)

	writer.Flush()
	writer.Close()

	Response.ContentEncoding = System.Text.Encoding.UTF8
	Response.ContentType = "Text/Xml"
	Response.Cache.SetCacheability(HttpCacheability.Public)

	Response.End()

end sub
'--------------------------------------------------------------------------------------------------
</script>