CSNewsClient.exe is NNTP Client written in C# . (This is while writing.)



That can do the thing below for the present :

1. verifying with the TextBox that the sending and receiving to the
 NNTP server.

2. verifying that the "header" information of the news article can
 restore NewsHeader class.

3. decoding the "Subject" header and the "From" header to Japanese.

4. decoding the "Body part" of the news article.

5. verifying to process "Date" header in the news article.

6. posting your news article.

7. displaying that "tree construction" of the thread in the news articles
 to the TreeView control.

It can do 7 things above.

About 1-5 above, if you run the CSNewsClient.exe and click the "button2", 
  and then you can verify above.

About 6 above, when the "Post" button is pushed, because form for POST
 comes out, writing necessary place, when you push the "Send"  button,
 then you can post the news article. 

About 7 above, when the button1 is clicked, the news articles are
 received, the "tree construction" of the thread in the news articles
 is indicated in treeView control. Furthermore when it clicks and selects,
 the header of the article is displayed the textBox1.

The content of the source codes is explained is below :

NNTPClient.cs : To connect/disconnect to the NNTP server and
 receiving the news articles. 

NewsArticle.cs : The class of the news article. That has fields of
 the NewsHeader class and the NewsBody class.

NewsHeader.cs : The class of the "header part" in the news article.
 The header information is stored in the "Hashtable". 

NewsBody.cs : The class of the "body part" in the news article.

NewsArticleNode.cs : The class is the subclass of TreeNode class.
 It handles the news articles as the node of the tree.

NewsArticleDictionary.cs : The class has the Hashtable to store 
 the NewsArticleNode class.

QuotedPrintable.cs : Decoding the "Quoted Printable" encoding. 


Decoding the Quoted Printable encoding is, for instance,

string src = "=1B$B\"(L$>5Bz$H>5Bz9-9p\"#=1B(B";
byte[] bs = TestWeb.QuotedPrintable.GetBytes(src);
string res = System.Text.Encoding.GetEncoding("iso-2022-jp").GetString(bs);

TextCheck.cs : The class for the "static" methods to check the string.

-- 
CSamura
MailTo: samura@pop16.odn.ne.jp
URL(Japanese Weblog): http://spaces.msn.com/members/csamura/
