📄 update.jsp
字号:
<%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK" %><%@ page import="java.util.*"%><%@ page import="java.lang.*" %><%@ page import="javax.servlet.*" %><%@ page import="javax.servlet.jsp.*" %><%@ page import="javax.servlet.http.* "%><%@ page import="java.io.*" %><%@ page import="java.nio.*" %><% /***********//* Author : JarryLi /* Blog:http://jiarry.blogchina.com/* 为了便于理解,特留一份经详细注释的代码;/***********/request.setCharacterEncoding("GBK");response.setCharacterEncoding("GBK");response.setContentType("text/html; charset=GBK");response.setHeader("Pragma", "No-cache");response.setHeader("Cache-Control", "no-cache");response.setHeader("Cache-Control", "must-revalidate");response.setDateHeader("Expires",0);%><%@ include file="../inc/data.jsp" %><%if (lineCount(filename) <= 0){ out.print("没有数据:("); return; } String name="",value="",desc="",no = "";int id = 0;; if(request.getParameter("name") != null) name = request.getParameter("name").trim(); if(request.getParameter("value") != null)value = request.getParameter("value").trim(); if(request.getParameter("desc") != null)desc = request.getParameter("desc").trim(); if(name.equals("") || value.equals("") || desc.equals("")){ out.print("参数不对:("); return; }/*单行更新,只传一个no参数即可,然后读取除no行号之外的其它所有数据,再重新写入文本;*/ if(request.getParameter("no") != null)no = request.getParameter("no").trim(); if( isNum(no) ) id = Integer.parseInt(no); if(no.equals("") || !isNum(no) || id<=0 ){ out.print("参数不对:("); return; } String updateContents=""; String inLine=null;int rowCount=0; //delete the selected; try{ //声明读取文件,读取文件里非当前号; BufferedReader readfile = new BufferedReader( new FileReader( filename ) ); while ( (inLine = readfile.readLine()) != null) { rowCount ++; if( rowCount != id ){ updateContents += (inLine + System.getProperty("line.separator")) ;//加上换行符,Unix,MAC,Windows可能略有不同; //updateContents += GBKtoUTF(inLine + "\r\n"); //若是当前号则用新的替换; }else{ //如果本页面不是采用utf-8编码,如GBK;那GET发送是需要对中文字符进行转换, //由于下面在存储之前要转换成GBKtoUTF所以,当前GET来的值先要转换成GBK; updateContents += ( id + "\t" + decodeGBK(name) +"\t"+ decodeGBK(value) +"\t"+ decodeGBK(desc) + "\r\n" ); //updateContents += ( id + "\t" + (name) +"\t"+ (value) +"\t"+ (desc) + "\r\n" ); } } }catch (IOException e){ //out.print("读取数据错误.");} //out.print(updateContents); /*-----------------------------*/ //write data in;/*-----------------------------*/ try{ //更新写入文本; String checkboxlist = updateContents; //out.print(checkboxlist); String Writestr = GBKtoUTF(checkboxlist) ; out.print(Writestr); if( writeContent( checkboxlist , filename ).equals("success") ) out.print("\"$updateOK$\""); //output ok status //去掉指定行的数据,重新存储一便数据.输出ok }catch(Exception e) { out.print(e.getMessage()); }%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -