关闭

统计日访问量(c#)

573人阅读 评论(0) 收藏 举报

void Application(object sender ,EventArgs)

{

Application["counter"]=0;

Application["day"]=DateTime.Now.ToString();

 

}

void Seesion_Start(object sender,EventArgs e)

{

Application.Lock();

int count;//记录文本中的访问量

System.IO.StreamReader srd;

string NowDay;//记录文本中访问时间

string file_path=Server.MapPath("count.txt");

srd=System.IO.File.OpenText(file_path);

while(srd.Peek()!=-1)

{

string str=srd.ReadLine();//保存从文件中读取的信息

}

srd.Close();

string str[]=str.Split(',');//将读取的信息放在字符窜数组中

count Convert.ToInt32(str[0]);//日访问量

string day=str[1];//最后一次访问时间

NowDay=DateTime.Now.ToString();

//文件中保存的时间值也系统时间相比,如果系统时间大,则重新开始计数

if(DateTime.Compare(Convert.ToDateTime(NowDay),COnvert.ToDateTime(day))>=0)

{

count =0;

day=DateTime.Now.AddDays(1).ToShortDateString()+""+"00:00:00";//day保存下一天开始时间

string NewDayStr="0"+","+day.Tostring();

//将数据记录写入文件

//string file_path0=Server.MapPaht("count.txt");

StreamWriter srw0=new StreamWriter(file_path,false);

srw0.WriteLine(NewDayStr);

srw0.Close();

}

object objcount=count;

object objday=day;

//日访问量

Application["counter"]=objday;

//数据累加

int Stat=0;

//获取Application对象中的日访问量

Stat=(int)Application["counter"]=objcount;

Stat+=1;

object obj=Stat;

Application["counter"]=obj;

//保存日期

string day0=(string)Application["day"];

string str0=obj.ToString()+","+day0.ToString();

//将数据记录写入文件

//string file_paht0=Server.MapPath("count.txt");

StreamWriter srw1=new StreamWriter(file_path,false);

srw1.WriteLine(Stat);

srw1.Close();

Application.UnLock();

void Application_End(object sender,EventArgs e)

{

int Stat=0;

Stat=(int)Application["day"];

string day0=(strijng)Application["day"];

string str=Stat.ToString()+","+day0.Tostring();

string file_path=Server.MapPath("count.txt");

StreamWriter srw=new StreamWriter(file_path,false);

srw.WriteLine(str);

srw.Close();

}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:26590次
    • 积分:545
    • 等级:
    • 排名:千里之外
    • 原创:25篇
    • 转载:14篇
    • 译文:2篇
    • 评论:4条
    文章分类
    最新评论