『转载』以学论道之ASP.NET中的文件流操作
作者:Anytao
引言:
在Web开发中,常常存在对文件的操作,这是程序设计必备的功课之一。提高ASP.NET设计能力,处理熟悉控件的使用、数据库操作、XML技术之外,对文件的读写操作,也是提高WEB设计开发的利剑之一。
本文以简单的事例为力,阐述如何在Web页面中读取文本信息,来实现对不常更新信息页面的后台更改能力,因为不常更新的信息,如关于页面、网站介绍、网站地图等,没有必要以数据库方式来实现,其带来的设计复杂度和系统开销,是没有必要的。
基本信息
开发环境:VS2003工具,.NET平台, C#语言
技术要点:ASP.NET中文件流的读写,Table控件的动态使用
解决方案
1 建立项目,设置目录和要显示的文本信息,本文在此建立一个网页链接的动态实现办法,因此建立两个文本文件,分别是网页名称Link.txt和网页地址Url.txt,这样实现的好处可以见代码。
2 加入Table,设置其Style。
3 在Page_Load()中,加入加载文本信息的代码实现。
1private void Page_Load(object sender, System.EventArgs e)
2 {
3 // 在此处放置用户代码以初始化页面
4 //读取文件路径
5 string fileNameUrl=Server.MapPath(@"Blogtext\Url.txt");
6 string fileNameLnk=Server.MapPath(@"Blogtext\link.txt");
7
8 //读取文本文件到文件流
9 StreamReader srUrl=new StreamReader(fileNameUrl);
10 StreamReader srLnk=new StreamReader(fileNameLnk);
11
12 string strUrl, strLnk;
13
14 while(srUrl.Peek()!=-1)
15 {
16 strUrl=srUrl.ReadLine();
17 strLnk=srLnk.ReadLine();
18
19 //采用两个文本文件可以轻松实现Url和Text的分离
20 HyperLink hlnk=new HyperLink();
21 hlnk.Visible=true;
22 hlnk.Text=strUrl;
23 hlnk.NavigateUrl=strUrl;
24
25 //可以采用其他方式动态实现
26 //向Table中动态加入文本信息
27 TableRow tr=new TableRow();
28 TableCell tc1=new TableCell();
29 TableCell tc2=new TableCell();
30
31 tc1.Text=strLnk;
32 tc2.Controls.Add(hlnk);
33 tr.Cells.Add(tc1);
34 tr.Cells.Add(tc2);
35 tabText.Rows.Add(tr);
36
37 }
38
39 }
40
2 {
3 // 在此处放置用户代码以初始化页面
4 //读取文件路径
5 string fileNameUrl=Server.MapPath(@"Blogtext\Url.txt");
6 string fileNameLnk=Server.MapPath(@"Blogtext\link.txt");
7
8 //读取文本文件到文件流
9 StreamReader srUrl=new StreamReader(fileNameUrl);
10 StreamReader srLnk=new StreamReader(fileNameLnk);
11
12 string strUrl, strLnk;
13
14 while(srUrl.Peek()!=-1)
15 {
16 strUrl=srUrl.ReadLine();
17 strLnk=srLnk.ReadLine();
18
19 //采用两个文本文件可以轻松实现Url和Text的分离
20 HyperLink hlnk=new HyperLink();
21 hlnk.Visible=true;
22 hlnk.Text=strUrl;
23 hlnk.NavigateUrl=strUrl;
24
25 //可以采用其他方式动态实现
26 //向Table中动态加入文本信息
27 TableRow tr=new TableRow();
28 TableCell tc1=new TableCell();
29 TableCell tc2=new TableCell();
30
31 tc1.Text=strLnk;
32 tc2.Controls.Add(hlnk);
33 tr.Cells.Add(tc1);
34 tr.Cells.Add(tc2);
35 tabText.Rows.Add(tr);
36
37 }
38
39 }
40
4 运行查看,OK。
结束语
文件操作,是程序开发的基本内容,需要进一步提高知识积累。在本文的实例中,其实可以尝试使用DataSet和XML方式来实现,会更加具有灵活性,具体思路可以进一步探讨。
希望各位博友,砖头与鸡蛋同在,我将努力在风雨中前行。
Enjoy.
关于作者
数年学道,一朝醒悟,身于技术,心系天下。内专注于.NET,外切磋于Delphi,只身江湖于京城,志满筹。心若凭栏,以立业传道为己任;神思四海,为技术中华而躬身。
敬请关注Anytao.com。