首页 > 编程 > JSP > 正文

一个使用TXT文本的JSP网站访问计数器(不用任何数据库)

2024-09-05 00:19:15
字体:
来源:转载
供稿:网友
//counter.java 读写文件的一个bean
===========================
 //网站读写txt格式计数器
 package net.com.util;
 
 import java.io.*;

 public class counter extends object {
 private string currentrecord = null;//保存文本的变量
 private bufferedreader file; //bufferedreader对象,用于读取文件数据
 private string path;//文件完整路径名
 public counter() {
 }
// readfile方法用来读取文件filepath中的数据,并返回这个数据
 public string readfile(string filepath) throws filenotfoundexception
 {
 path = filepath;
// 创建新的bufferedreader对象
 file = new bufferedreader(new filereader(path));
 string returnstr =null;
 try
 {
// 读取一行数据并保存到currentrecord变量中
 currentrecord = file.readline();
 }
 catch (ioexception e)
 {//错误处理
 system.out.println("读取数据错误.");
 }
 if (currentrecord == null)
// 如果文件为空
 returnstr = "没有任何记录";
 else
 {//文件不为空
 returnstr =currentrecord;
 }
// 返回读取文件的数据
 return returnstr;
 }
// readfile方法用来将数据counter+1后写入到文本文件filepath中
// 以实现计数增长的功能
 public void writefile(string filepath,string counter) throws filenotfoundexception
 {
 path = filepath;
// 将counter转换为int类型并加一
 int writestr = integer.parseint(counter)+1;
 try {
// 创建printwriter对象,用于写入数据到文件中
 printwriter pw = new printwriter(new fileoutputstream(filepath));
// 用文本格式打印整数writestr
 pw.println(writestr);
// 清除printwriter对象
 pw.close();
 } catch(ioexception e) {
// 错误处理
 system.out.println("写入文件错误"+e.getmessage());
 }
 }

 }
 
  ====================================
// counter.jsp文件
<%@ page contenttype="text/html;charset=gbk"%>
<!--创建并调用bean(counter)-->
<jsp:usebean id="counter" scope="page" class="net.com.util.counter"/>
<%
//调用counter对象的readfile方法来读取文件lyfcount.txt中的计数
string url=request.getrealpath("count.txt");
string cont=counter.readfile(url);
//调用counter对象的readfile方法来将计数器加一后写入到文件lyfcount.txt中
counter.writefile(url,cont);%>
您是第<font color="red"> <%=cont%> </font>位访问者

======================================
//注意:在counter的同一目录下建立一个count.txt文件。。初始数字为0
======================================


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表