以前编写JSP网站时写的一些工具函数

js|函数

初学JSP时,写了一些工具函数因为不太会用JAVA下的正则表达式也只能这么写啦!发出来让大家批评批评提点意见!有几个函数不算是自己写的希望爱挑剌的朋友嘴下留情!我是新手我怕谁,脸皮不行的人水平也上不去呀.嘻嘻..

package mxzc.web.strctrl;
public class StringCtrl
{/********************************************
public synchronized String HTMLcode(String TXTcode)   功能:文本替换
public synchronized String Unhtmlcode(String str)   功能:(不完全)反文本替换
public synchronized String Unhtmlcodea(String str)   功能:反文本替换
public synchronized boolean emailcheck (String email)   功能:检查一个字符串是否符合E-Mail
public synchronized boolean isemailstr(String email)   功能:检查一个字符串是否符合E-Mail
public synchronized boolean isqqstr(String qq)    功能:检查一个字符串是否符合QQ
public synchronized boolean isnumstr(String num)   功能:检查一个字符串是否为一数字串
public synchronized String userstrlow(String user)   功能:替换用户名中不合法的部分
public synchronized boolean userstrchk(String user)   功能:检查字符串是否符合用户名法则
public synchronized boolean istelstr(String tel)   功能:检查字符串是否为TEL
public synchronized boolean urlcheck(String url)   功能:检查字符串是否为URL
public synchronized String isotogbk(String iso)    功能:ISO9006-1码转换为GBK
public synchronized String gbktoiso(String gbk)    功能:GBK码转换为ISO9006-1
public synchronized String dostrcut(String oldstr,int length)  功能:按汉字长换行(英文按半个字长)
public synchronized String inttodateshow(int datenum)   功能:将1900年至时间的秒数换为日期字符串
public synchronized String nowdateshow()    功能:显示当前日期
public synchronized java.util.Date inttodate(int datenum)  功能:将秒数转换为日期
public synchronized int datetoint()     功能:将时间换为从1900年至今的秒数
public synchronized int datetoint(java.util.Date d)   功能:将时间换为从1900年至时间的秒数
public synchronized String overlengthcut(String str,int length)  功能:截取前几个字符,单位为汉字字长
public synchronized String replace(String str,String suba,String subb) 功能:字符串替换
*********************************************/
private static final String isostr="ISO8859-1";
private static final String gbkstr="GBK";
public StringCtrl()
{
}
public synchronized boolean emailcheck (String email)
{
if(email==null)return false;
if(email.length()<6)return false;
if(email.indexOf("@")<2)return false;
if(email.indexOf(".")<4)return false;
if(email.endsWith(".")||email.endsWith("@"))return false;
if(email.lastIndexOf("@")>email.lastIndexOf(".")-1)return false;
if(email.lastIndexOf("@")!=email.indexOf("@"))return false;
String[] lowstr={"\'","\"","\n","&","\t","\r","<",">","/","\\","#"};
for(int i=0;i<lowstr.length;i++)if(email.indexOf("lowstr")>0)return false;
return true;
}
public synchronized boolean isemailstr(String email)
{
if(email==null)return false;
if(email.indexOf("@")==-1||email.indexOf(".")==-1||email.length()<6)return false;
return true;
}
public synchronized boolean isqqstr(String qq)
{
if(qq==null)return false;
if(qq.length()>12)return false;
if(qq.length()<5)return false;
for(int i=0;i<qq.length();i++)
if(!(((int)qq.charAt(i))<=57&&((int)qq.charAt(i))>=48))return false;
return true;
}
public synchronized boolean isnumstr(String num)
{
if(num==null)return false;
if(num.length()<1)return false;
for(int i=0;i<num.length();i++)
if(!(((int)num.charAt(i))<=57&&((int)num.charAt(i))>=48))return false;
return true;
}
public synchronized String userstrlow(String user)
{
String newuserstr=user.trim();
char[] lowstr={'\'','\"','\n','&','\t','\r','<','>','/','\\','#'};
for(int i=0;i<lowstr.length;i++)
newuserstr=newuserstr.replace(lowstr[i],'+');
return newuserstr;
}
public synchronized boolean userstrchk(String user)
{
String newuserstr=user.trim();
char[] lowstr={'\'','\"','\n','&','\t','\r','<','>','/','\\','#','~','`','!','@','$','%','^','*','(',')','-','_','+','=','|','?',',',';','.'};
for(int i=0;i<lowstr.length;i++)
newuserstr=newuserstr.replace(lowstr[i],'+');
return (user.equals(newuserstr))?true:false;
}
public synchronized boolean istelstr(String tel)
{
if(tel==null)return false;
if(tel.length()<1)return false;
if(tel.length()>32)return false;
for(int i=0;i<tel.length();i++)
if(!(((int)tel.charAt(i))<=57&&((int)tel.charAt(i))>=48))if(tel.charAt(i)!='-')return false;
return true;
}
public synchronized boolean urlcheck(String url)
{
if(url==null)return false;
if(url.length()<10)return false;
String urls=url.toLowerCase();
if(!urls.startsWith("http://"))return false;
if(url.indexOf("<")>0||url.indexOf(">")>0)return false;
return true;
}
public synchronized String isotogbk(String iso)throws Exception
{
 if(iso!=null)return (new String(iso.getBytes(isostr),gbkstr));
 if(iso.length()<1)return "";
 return null;
}
public synchronized String gbktoiso(String gbk)throws Exception
{
 if(gbk!=null)return (new String(gbk.getBytes(gbkstr),isostr));
 if(gbk.length()<1)return "";
 return null;
}
public synchronized String HTMLcode(String TXTcode)
{
 String newstr="";
 if(TXTcode==null)return "";
 newstr=TXTcode;
 newstr=replace(newstr,"&","&");
 newstr=replace(newstr,"\"",""");
 newstr=replace(newstr," "," ");
 newstr=replace(newstr,"<","<");
 newstr=replace(newstr,">",">");
 newstr=replace(newstr,"\'","'");
 return newstr;
}
public synchronized String Unhtmlcode(String str)
{
 String newstr="";
 if(str==null)return "";
 if(str.length()<1)return "";
 newstr=str;
 newstr=replace(newstr,"&","&");
 //newstr=replace(newstr,""","\"");
 newstr=replace(newstr," "," ");
 newstr=replace(newstr,""","\"");
 //newstr=replace(newstr,"<","<");
 //newstr=replace(newstr,">",">");
 newstr=replace(newstr,"'","\'");
 return newstr;
}
public synchronized String Unhtmlcodea(String str)
{
 String newstr="";
 if(str==null)return "";
 if(str.length()<1)return "";
 newstr=str;
 newstr=replace(newstr,"&","&");
 newstr=replace(newstr,""","\"");
 newstr=replace(newstr," "," ");
 newstr=replace(newstr,"<","<");
 newstr=replace(newstr,">",">");
 newstr=replace(newstr,"'","\'");
 return newstr;
}
public synchronized String dostrcut(String oldstr,int length)
{
 int i=0;
 int j=0;
 int k=0;
 String newstr="";
 if(oldstr==null)return "";
 if(length<=0)return "";
 for(i=0;i<oldstr.length();i++)
 {
  if(oldstr.charAt(i)=='\n')j=0;
  else if(((int)(oldstr.charAt(i)))>255)j+=2;
  else j++;
  if((j/2)>=length)
  {
   newstr=newstr.concat(oldstr.substring(k,i)+"\n");
   k=i;
   j=0;
  }
 }
 newstr=newstr.concat(oldstr.substring(k)+"\n");
 return newstr;
}
public synchronized String inttodateshow(int datenum)
{
 int year=0;
 int month=0;
 int day=0;
 int hour=0;
 int minute=0;
 int second=0;
 String datestr="";
 java.util.Date d;
 d=new java.util.Date((long)(datenum)*1000);
 java.util.Calendar ds=java.util.Calendar.getInstance();
 ds.setTime(d);
 year=ds.get(java.util.Calendar.YEAR);
 month=ds.get(java.util.Calendar.MONTH);
 day=ds.get(java.util.Calendar.DATE);
 hour=ds.get(java.util.Calendar.HOUR_OF_DAY);
 minute=ds.get(java.util.Calendar.MINUTE);
 second=ds.get(java.util.Calendar.SECOND);
 datestr=Integer.toString(year)+"/"+Integer.toString(1+month)+"/"+Integer.toString(day);
 return datestr;
}
public synchronized String nowdateshow()
{
 int year=0;
 int month=0;
 int day=0;
 int hour=0;
 int minute=0;
 int second=0;
 String datestr="";
 java.util.Calendar ds=java.util.Calendar.getInstance();
 year=ds.get(java.util.Calendar.YEAR);
 month=ds.get(java.util.Calendar.MONTH);
 day=ds.get(java.util.Calendar.DATE);
 hour=ds.get(java.util.Calendar.HOUR_OF_DAY);
 minute=ds.get(java.util.Calendar.MINUTE);
 second=ds.get(java.util.Calendar.SECOND);
 datestr=Integer.toString(year)+"/"+Integer.toString(1+month)+"/"+Integer.toString(day);
 return datestr;
}
public synchronized java.util.Date inttodate(int datenum)
{
 int year=0;
 int month=0;
 int day=0;
 String datestr="";
 java.util.Date d;
 d=new java.util.Date((long)(datenum)*1000);
 return d;
}
public synchronized int datetoint()
{
 java.util.Date d=null;
 long ds=0;
 d=new java.util.Date();
 ds=d.getTime();
 return (int)(ds/1000);
}
public synchronized int datetoint(java.util.Date d)
{
 long ds=0;
 ds=d.getTime();
 return (int)(ds/1000);
}
public synchronized String overlengthcut(String str,int length)
{
 int i=0;
 int j=0;
 if(str==null)return "";
 if(length<0)return "";
 if(str.length()<=length)return str;
 for(i=0;i<str.length();i++)
 {
  if(((int)(str.charAt(i)))>255)j+=2;
  else j++;
  if((j/2)>=length)
  {
   return str.substring(0,i);
  }
 }
 return str;
}
public synchronized String replace(String str,String suba,String subb)
{
String newstr="";
int start=0;
int offset=0;
int subalength=0;
int strlength=0;
if(str==null||suba==null||subb==null)return str;
if(suba.equals(subb))return str;
if(str.length()<suba.length()||str.length()<subb.length())return str;
if(str.length()>0&&suba.length()>0&&subb.length()>0)
{
 subalength=suba.length();
 strlength=str.length();
 while(true)
 {
  if(str.indexOf(suba)<0)break;
  if(offset>strlength)break;
  start=str.indexOf(suba,offset);
  if(start<offset)break;
  newstr=newstr.concat(str.substring(offset,start));
  newstr=newstr.concat(subb);
  offset=start+subalength;
 }
 newstr=newstr.concat(str.substring(offset));
 return newstr;
}
else
{
 return str;
}
}
}

时间: 2024-10-17 22:56:10

以前编写JSP网站时写的一些工具函数的相关文章

myeclipse 编写jsp页面求助

问题描述 我目前的代码才1000多行,从昨天开始,编写jsp代码时,敲一个字母要反映半天.我重新安装了好几次并且重新做个系统重新安装目前还是不能解决.我也没有开着tomcat去编写.麻烦知道的朋友告诉一下如何解决. 解决方案 解决方案二:更换JSP文件的打开方式,尝试不同的编辑器,以选择最佳方案解决方案三:cpu,内存占用情况如何?楼主是不是在项目中导入了很多资源文件(jsp,css,js等等),这些也会影响myeclipse的速度解决方案四:没有导入过多的样式js,我刚才仔细看了一下我在500

VS2010编写网站,用iis发布网站时出错

问题描述 VS2010编写网站,用iis发布网站时出错 自己用vs2010编写的程序,用IIS发布,出现的问题是"未能从程序集"System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"中加载类型"System.ServiceModel.Activation.HttpModule"."上网找的解决方式是在cmd中输入Microsof

myeclipse-MyEclipse中写jsp页面时,看不见贯鼠标光标

问题描述 MyEclipse中写jsp页面时,看不见贯鼠标光标 MyEclipse中写jsp页面时,看不见贯鼠标光标 解决方案 把下面console中的暂停点一下,因为控制台一直在运行 解决方案二: 我的也是这样,试了一下好了!不知道你的是不是也是这原因! 解决方案三: 好像还是不行啊!

jsp和servlet编写登录界面时?登录成功与否该用客户端跳转还是服务器跳转

问题描述 jsp和servlet编写登录界面时?登录成功与否该用客户端跳转还是服务器跳转 3C jsp和servlet编写登录界面时?登录成功与否该用客户端跳转还是服务器跳转 1.服务器端跳转:forward 2.客户端跳转:sendRediirect 请问该用哪一个?两个方法有什么区别? 解决方案 客户端跳转与服务器跳转服务器跳转与客户端跳转的区别服务器跳转与客户端跳转的区别 解决方案二: 用forward是转发,在新页面上不会有跳转时的比如登录名密码之类的信息,更安全而且效率更高,,send

sql-为什么VS express for web 在网站下创建.jsp文件时不能正常打开。

问题描述 为什么VS express for web 在网站下创建.jsp文件时不能正常打开. VS express for web 在网站下创建.jsp文件时不能正常打开,正常的会出现sql的工具蓝,而我的什么都没有,字体颜色也没有变.重装过该软件不不能解决这个问题,求各位大神帮帮忙. 解决方案 vs express for web是用来开发asp.net的,你用它开发jsp干嘛呢?根本都没有那个功能. 解决方案二: 如何使用Visual Studio 2013 for Web Express

S7898编写短信时,如何使用全屏手写?

1. 在待机模式下,点击[信息].     2. 点击屏幕右上角的[写信息]图标.     3. 点击屏幕下方的[小齿轮]图标.     4. 在[键盘类型设定]中,选择[中文]或[英文],这里以[中文]为例.     5. 点击[全屏手写].     6. 完成以上操作后,在编写短信时,可用全屏手写方式进行输入.    

jsp标签-用java wed编写旅游网站

问题描述 用java wed编写旅游网站 求用java wed编写的小型旅游网站,里面包含mysql数据库,主页,用户注册,景点 解决方案 参考:http://download.csdn.net/download/hengfeiyu1/7107799http://download.csdn.net/detail/sunhongwen/7254121 解决方案二: selenium自动化测试实现对网站的登陆(使用java编写)

实例讲解:全程追踪入侵JSP网站服务器

js|服务器 在用JSP制作的电子商务网站多如牛毛.但是对于JSP网站而言,安全性真的能够让人放心吗?面对层出不穷的黑客攻击和病毒袭击,JSP网站的服务器能够比其他网站的服务器器更加安全吗?前段时间,应朋友之邀,我对他们托管的三台服务器的主机进行了测试,发现了JSP网站存在的几个问题. 入侵测试第一步:扫描 扫描是入侵的第一步,它可以让你对即将入侵的目标有一个全面的了解.同时扫描还有可能发现扫描对象的漏洞,为入侵提供一个指导方向. 朋友的两台服务器为Linux,一台为Windows系统,在路由器

图文讲解全程追踪入侵JSP网站服务器

js|服务器 在用JSP制作的电子商务网站多如牛毛.但是对于JSP网站而言,安全性真的能够让人放心吗?面对层出不穷的黑客攻击和病毒袭击,JSP网站的服务器能够比其他网站的服务器器更加安全吗?前段时间,应朋友之邀,我对他们托管的三台服务器的主机进行了测试,发现了JSP网站存在的几个问题. 入侵测试第一步:扫描 扫描是入侵的第一步,它可以让你对即将入侵的目标有一个全面的了解.同时扫描还有可能发现扫描对象的漏洞,为入侵提供一个指导方向. 朋友的两台服务器为Linux,一台为Windows系统,在路由器