分享
 
 
 

常用基础函数

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

package com.cdc;

import Java.util.*;

import java.io.*;

/**

* 常用基础函数(包括合并数组,拆分字串到数组,生成随机数,替换字符串中的子字符串,获取当前时间),将HASHTABLE内容转入数组

* 创建日期:(2001-7-19 17:22:33)

* @author:刘晓东

*/

public class Util {

/**

* 拼合数组。

* 创建日期:(2001-8-13 17:08:26)

* @return java.lang.String

* @param param java.lang.String

*/

public String join_array(String[] param,String spilt) {

String rentunstring;

StringBuffer tempstr = new StringBuffer();

int len = param.length;

for (int i = 0 ; i<len-1;i++ )

{

tempstr.append(param[i]);

tempstr.append(spilt);

}

tempstr.append(param[len-1]);

rentunstring = tempstr.toString();

return rentunstring;

}

/**

* 产生在start和end之间的num个随机整数,返回值存在Hashtable中。

* 创建日期:(2001-7-30 8:50:23)

* @return java.util.Hashtable

* @param start int 起始点

* @param end int 结束点

* @param num int 生成个数

*/

public Hashtable random(int start, int end, int num)

{

Hashtable randomHash = new Hashtable();

for (int i = 0; i < num; i++)

{

double sru = Math.random() * end;

int tag = Math.round((float) sru);

if (tag < start)

{

i--;

} else

{

randomHash.put(new Integer(i), new Integer(tag));

}

}

return randomHash;

}

/**

* 替换字符串中的子字符串

* 创建日期:(2001-10-10 13:50:21)

* @return java.lang.String

* @param param java.lang.String 原字符串

* @param param1 java.lang.String 需要替换的子字符串

* @param param2 java.lang.String 将被替换成的子字符串

* @exception java.lang.Exception 异常说明。

*/

public String replaceString(

String param,

String param1,

String param2)

throws java.lang.Exception {

String returnString = "";

try

{

if (param != null

&& param1 != null

&& param2 != null

&& !param.equalsIgnoreCase("")

&& !param1.equalsIgnoreCase("")

&& !param2.equalsIgnoreCase(""))

{

int intLen = param.length(); //原字符串长度

int intLenSrc = param1.length(); //需要替换的子字符串长度

int intPoint = 0; //当前位置

while (intPoint < param.length())

{

if ((intPoint + intLenSrc) <= param.length() && intPoint<param.length())

{

String compareString =

param.substring(intPoint, intPoint + intLenSrc);

if (compareString.equalsIgnoreCase(param1))

{

returnString = returnString + param2;

intPoint = intPoint + param1.length();

}

else

{

returnString = returnString + param.charAt(intPoint);

intPoint++;

}

}

else if ((intPoint + intLenSrc) > param.length() && intPoint<param.length())

{

returnString = returnString + param.charAt(intPoint);

intPoint++;

}

else if ((intPoint + intLenSrc) > param.length())

{

break;

}

}

}

}

catch (java.lang.Exception ex)

{

return ex.toString();

}

return returnString;

}

/**

* 此处插入方法说明

* 拆分字串到数组,分割符请使用,.等,不能使用中文符号作为分割符号,返回Hashtable

* 创建日期:(2001-7-10 14:50:31)

* @param fieldsru java.lang.String 输入参数:待拆分字符串

* @param tag java.lang.String 输入参数:分割符

* 返回Hashtable

* @exception java.lang.Exception 异常说明。

* @exception java.io.IOException 异常说明。

*/

public Hashtable spilt(String fieldsru, String tag)

{

Hashtable returnarray = new Hashtable();

char dot = tag.charAt(0);

String field;

field = fieldsru + dot;

int num = 0;

int field_len = field.length();

for (int i = 0; i < field_len; i++)

{

if (field.charAt(i) == dot)

{

num++;

}

}

int begin = 0;

int end;

for (int j = 0; j < num; j++)

{

end = field.indexOf(dot, begin);

returnarray.put(new Integer(j), field.substring(begin, end));

begin = end + 1;

}

return returnarray;

}

/**

* 拆分字串到数组,分割符请使用,.等,不能使用中文符号作为分割符号,返回String[]

* 创建日期:(2001-7-10 14:50:31)

* @param fieldsru java.lang.String 输入参数:待拆分字符串

* @param tag java.lang.String 输入参数:分割符

* 返回String[]

* @exception java.lang.Exception 异常说明。

* @exception java.io.IOException 异常说明。

*/

public String[] spilt_str(String fieldsru, String tag)

{

//Hashtable returnarray = new Hashtable();

char dot = tag.charAt(0);

String field;

field = fieldsru + dot;

int num = 0;

int field_len = field.length();

for (int i = 0; i < field_len; i++)

{

if (field.charAt(i) == dot)

{

num++;

}

}

String[] returnarray = new String[num];

int begin = 0;

int end;

for (int j = 0; j < num; j++)

{

end = field.indexOf(dot, begin);

returnarray[j] = field.substring(begin, end);

//returnarray.put(new Integer(j), field.substring(begin, end));

begin = end + 1;

}

return returnarray;

}

/**

* 拆分字串到数组,分割符可使用多个字符或者中文

* 创建日期:(2001-7-10 14:50:31)

* @param fieldsru java.lang.String 输入参数:待拆分字符串

* @param tag java.lang.String 输入参数:分割符

* @exception java.lang.Exception 异常说明。

* @exception java.io.IOException 异常说明。

*/

public String[] SplitString(String fieldsru, String tag)

{

try

{

int dot_len = tag.length(); //获得分割符的长度

int str_len = fieldsru.length(); //字符串长度

String tempStr = fieldsru + tag;

int num = 0;

for (int i = 0; i < str_len; i++)

{

int point = i + dot_len;

if (point < str_len)

{

String temp = fieldsru.substring(i, point);

if (temp.equalsIgnoreCase(tag))

{

num++;

}

}

}

num = num + 1;

String[] returnarray = new String[num];

int begin = 0;

int end = fieldsru.indexOf(tag);

for (int i = 0; i < num; i++)

{

end = tempStr.indexOf(tag, begin);

returnarray[i] = tempStr.substring(begin, end);

begin = end + dot_len;

}

return returnarray;

}

catch (java.lang.Exception e)

{

System.out.println(e.getMessage());

}

return null;

}

/**

* 获取当前时间()时间格式 (mm/dd/yyyy hh:mm:ss pm)参数为时区

* 创建日期:(2001-10-22 10:11:48)

* @return java.lang.String

* @exception java.lang.Exception 异常说明。

*/

public String gettime(int time_zone) throws java.lang.Exception {

String nowtime = "";

try

{

if (time_zone > 0)

{

time_zone = time_zone - 1;

}

else if (time_zone < 0)

{

time_zone = time_zone + 1;

}

String[] ids = TimeZone.getAvailableIDs(time_zone * 60 * 60 * 1000);

SimpleTimeZone pdt =

new SimpleTimeZone(time_zone * 60 * 60 * 1000, ids[0]);

pdt.setStartRule(

Calendar.APRIL,

1,

Calendar.SUNDAY,

2 * 60 * 60 * 1000);

pdt.setEndRule(

Calendar.OCTOBER,

-1,

Calendar.SUNDAY,

2 * 60 * 60 * 1000);

Calendar calendar = new GregorianCalendar(pdt);

Date trialTime = new Date();

calendar.setTime(trialTime);

String now_year = new Integer(calendar.get(Calendar.YEAR)).toString();

String now_month =

new Integer(calendar.get(Calendar.MONTH) + 1).toString();

if (now_month.length() == 1)

{

now_month = "0" + now_month;

}

String now_date = new Integer(calendar.get(Calendar.DATE)).toString();

if (now_date.length() == 1)

{

now_date = "0" + now_date;

}

int am_pm = calendar.get(Calendar.AM_PM);

String now_hour = new Integer(calendar.get(Calendar.HOUR)).toString();

if (am_pm == 1)

{

int intnow_hour = Integer.parseInt(now_hour) + 12;

now_hour = (new Integer(intnow_hour)).toString();

}

else

{

}

if (now_hour.length() == 1)

{

now_hour = "0" + now_hour;

}

String now_MINUTE =

new Integer(calendar.get(Calendar.MINUTE)).toString();

if (now_MINUTE.length() == 1)

{

now_MINUTE = "0" + now_MINUTE;

}

String now_SECOND =

new Integer(calendar.get(Calendar.SECOND)).toString();

if (now_SECOND.length() == 1)

{

now_SECOND = "0" + now_SECOND;

}

String str_AMPM = "";

//判定上午还是下午

if (am_pm == 0)

{

str_AMPM = "AM";

}

else if (am_pm == 1)

{

str_AMPM = "PM";

}

nowtime =

now_month

+ "/"

+ now_date

+ "/"

+ now_year

+ " "

+ now_hour

+ ":"

+ now_MINUTE

+ ":"

+ now_SECOND

+ " "

+ str_AMPM;

}

catch (Exception ex)

{

nowtime = ex.getMessage();

}

return nowtime;

}

/**

* 将HASHTABLE内容转入数组

* 创建日期:(2001-10-29 8:58:54)

* @return java.lang.String

* @param param java.util.Hashtable

* @exception java.lang.Exception 异常说明。

*/

public String[] hashToArray(Hashtable param)

throws java.lang.Exception {

if (param.size() == 0)

{

return null;

}

String[] return_array = new String[param.size()];

try

{

int param_size = param.size();

Enumeration enumKeys = param.keys(); //将hashtable转换为枚举类型

for (int i = 0; enumKeys.hasMoreElements(); i++)

{

Object temp = enumKeys.nextElement();

return_array[i] = (String) param.get(temp);

}

}

catch (Exception ex)

{

return_array[0] = ex.getMessage();

}

return return_array;

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有