1、方案考虑:-1.原文件格式的处理-由于信息源为纯文本文件按照各个栏目存放在相应的子目录内,要将它转换为HTML文件格式以便能以更好的方式在网络上显示。-2.每日信息目录索引的建立-为方便访问者的查阅,有必要建立一个信息的索引。提供显示每条信息的标题或简介。并且访问者可以直接通过索引查阅到相应文章。这就要求索引上必须有与相应信息文本的超连接。-3.日期查询的实现-对于信息的日期查询,考虑到信息存储空间的限制,只提供一定时间段的信息。由于这些时间段是动态的,为了不使查询工作繁琐,以及保持显示界面的简洁明了,动态更新日期列表。并使其与相应的信息目录索引进行联结。-4.信息的访问权限-使用最简单的加密
2、方法,将信息文本放在固定的子目录中,对服务器进行设置,设制对该目录的访问权限以实现对信息的访问控制。解决方法(以九月七日的信息处理为例):-编写程序html.exe。其功能是:-(1),读取当日信息日期。-(2),查找相应日期的源文件存放目录,读取目录下相应的文件。-(3),提出文件的标题字符串,放入当日的目录索引文件中。(例如index907.html)在放入的时候对它进行处理建立相应的超连接。另外对目录索引文件进行处理,加入背景、及书签方便阅读。-(4),对信息的原纯文本文件进行处理,加入背景、字体等修饰,使之成为标准的HTML文件。-(5),生成当日的日期查询列表:修改上次的列表,删除最
3、早的日期,增加当日日期,保证以一个固定的时间段的信息量。这样却保有一个稳定的存储空间,并且避免出现由于非工作日无信息而导致的用户连接找不到相应地址的情况。-通过程序html.exe的运行对原信息进行相应处理,生成三组文件:-1-信息文本,2-目录索引,3-日期索引。-每日将生成的三组文件上载到相应的子目录即实现了对信息的每日更新。方案的优点:每日的维护简单,操作容易,一般操作员都能很快上手。整个操作安全稳定,不会出现连接中断网址找不到的情况。费用很低,不需要购买大型数据库软件和编写专业的查询软件。实现时间短,能够在较短的时间里实现信息的动态网上发布。程 序 清 单: #include stri
4、ng.h conio.h #define LANXMAX 150FILE *FileR,*FileW,*FileWIndex;char Path1=c:htmlmrcj;char Path2=htmlmrcjtxtchar Path350;char Path4=htmlccrindex.htmchar Path5=htmlhtml.inichar Path6=htmlhtml-1char Path7=htmlhtml-2char Month10,Date10;char FileName50;char FileNameIndex20;char FilePath150; /.08char File
5、Path250; /.08jxxtachar WriteFileName50;char IndexFileName50;char FileBak5;char LanMu;char Time20;char YEAR;char IndexLANMU619= 中外财经要闻,法律法规政策经济形势分析,企业改革透视社会保障制度改革发展研究;int FileNum;int Yea,Mon,Dat;void FileIni() switch(Yea) case 98: case 1998: YEAR=B case 99: case 1999:J default: if(Yea 100) Yea+=1900;
6、 FileNum=0; sprintf(FilePath1,fl%02d,Dat); sprintf(FileBak,.%1X%02d,Mon,Dat);void AddFileProc(int num)char FLanReadLANXMAX;char MainLanLANXMAX;char FENLEI50;char IndexLan150;int i; sprintf(FENLEI,.中国改革.每日财经信息. %02d月%02d日r rnrn printf(*); sprintf(FileName,%sjxxt%c%03d%s FilePath2,LanMu,num,FileBak);
7、if(!(FileR=fopen(FileName,rb) printf(cannot open this filen return; /-add htmlhead- fputs( rn rn,FileW); fputs(FENLEI,FileW); fgets(FLanRead,LANXMAX-5,FileR); /-add index procedure- sprintf(IndexLan, a href=txt/%02d/%s target=new%s /html void MakeMainFile() FILE *fp,*fpp,*fppp; char ccc,fn50,fff150;
8、 int n,mm,ddd; /-html- if(fppp=fopen(Path4,wb)=NULL)不能打开目标文件!nCan not Write the file:%sn,Path3); return; if(fpp=fopen(Path6,不能打开文件数目文件!Can not Open the file:,fpp); ccc=fgetc(fpp); do fputc(ccc, fppp); while (!feof(fpp); fclose(fpp); if(fp=fopen(Path7,fp); /-html- if(fp=fopen(Path5, n=0; fscanf(fp, %
9、d, &mm);ddd); do n+; if(mm 1|ddd12|ddd 31)日期错误!date is wrong in: c:htmlhtml.ini sprintf(fff, tr td align=center bgcolor=#FF0000./mrcj/INDEX%1X%02d.HTMright %d月%d日 /td /tr mm,ddd,mm,ddd); fputs(fff,fppp); /-add index procedure- while(!feof(fp)&(n 25); fclose(fp); /-html- if(fpp=fopen(Path7, fclose(fp
10、pp);void AddFile() FILE *fp; char fn50,fi50; int n; sprintf(FilePath2,%sjxxt%c,FilePath1, LanMu);n%s,FilePath2); sprintf(fn,%sjxxt%cdat%s,FilePath2,LanMu, FileBak); if(fp=fopen(fn,fn);fp) else FileNum=fgetc(fp); %02d ,FileNum); for(n=1;n0)&(Mon (Dat94)&(Yea1994) & 1999); FileIni(); MakeMainFile(); s
11、printf(IndexFileName,%sINDEX%1X%02d.htm Path1,Mon,Dat); if(FileWIndex=fopen(IndexFileName,) =NULL) IndexFileName); return 0; !DOCTYPE HTML PUBLIC -/IETF/DTD HTML/EN r meta http-equiv=Content-Type FileWIndex);content=text/html; charset=gb_2312-80 meta name=GENERATOR content=Microsoft FrontPage 2.0.yi
12、nlu title 中国改革.每日财经信息.目录 /title n././images/bk_creform.jpg table border=0 width=100%r#中外财经要闻name=head font color=#FFFFFF face=黑体 strong 中外财经要闻 /font #法律法规政策 fontcolor=法律法规政策#经济形势分析经济形势分析#企业改革透视企业改革透视#社会保障制度社会保障制度#改革发展研究改革发展研究nn for(LanMu=A,xx=0;LanMu a name=中外财经要闻 中外财经要闻 break; case 1:法律法规政策 法律法规政策 case 2:经济形势分析 经济形势分析 case 3:企业改革透视 企业改革透视 case 4:社会保障制度 社会保障制度 case 5:改革发展研究 改革发展研究 n#head 返回页首 fclose(FileWIndex);nA
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1