java开发的方法_JAVA项目开发中的常用方法

package com.util;

import java.io.BufferedInputStream;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.FileWriter;

import java.io.FilterInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.io.PrintWriter;

import java.net.URL;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

import java.util.Enumeration;

import java.util.HashMap;

import java.util.Map;

import java.util.Properties;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class SuperUitl {

public static void main(String[] args) {

System.out.println();

}

/**

* 全角转半角

* trr 要转换成半角的字符串

*/

public static String change(String str) {

String outStr="";

String test="";

byte[] code = null;

for(int i=0;i

try {

test = str.substring(i,i+1);

code = test.getBytes("unicode");

} catch(java.io.UnsupportedEncodingException e) {

}

if (code[3] == -1) {

code[2] = (byte)(code[2]+32);

code[3] = 0;

try {

outStr = outStr + new String(code,"unicode");

} catch(java.io.UnsupportedEncodingException e) {

}

} else {

outStr = outStr + test;

}

}

return outStr;

}

/**

* 根据key读取value

* filePath 要操作的properties文件路径

* key 要获得数据的key

*/

public static String readValue(String filePath,String key) {

Properties props = new Properties();

try {

InputStream in = new BufferedInputStream (new FileInputStream(filePath));

props.load(in);

String value = props.getProperty (key);

return value;

} catch (Exception e) {

return null;

}

}

/**

* 读取properties的全部信息

* filePath 要操作的properties文件路径

*/

public static Map readProperties(String filePath) {

Map map = new HashMap();

Properties props = new Properties();

try {

InputStream in = new BufferedInputStream (new FileInputStream(filePath));

props.load(in);

Enumeration en = props.propertyNames();

while (en.hasMoreElements()) {

String key = (String) en.nextElement();

String Property = props.getProperty (key);

map.put(key,Property);

}

return map;

} catch (Exception e) {

return null;

}

}

/**

* 写入properties信息

* filePath 要操作的properties文件路径

* key 要写入的key

* value 要写入的value

*/

public static boolean writeProperties(String filePath,String key,String value) {

Properties prop = new Properties();

try {

InputStream fis = new FileInputStream(filePath);

//从输入流中读取属性列表(键和元素对)

prop.load(fis);

//调用 Hashtable 的方法 put。使用 getProperty 方法提供并行性。

//强制要求为属性的键和值使用字符串。返回值是 Hashtable 调用 put 的结果。

OutputStream fos = new FileOutputStream(filePath);

prop.setProperty(key,value);

//以适合使用 load 方法加载到 Properties 表中的格式,

//将此 Properties 表中的属性列表(键和元素对)写入输出流

prop.store(fos, "Update '" + key + "' value");

return true;

} catch (IOException e) {

return false;

}

}

/**

* 返回标准系统时间

*/

public static String getDate() {

SimpleDateFormat ft=null;

Date date=null;

Calendar cl= Calendar.getInstance();

cl.setTime(new java.util.Date());

date=cl.getTime();

ft=new SimpleDateFormat("yyyy-MM-dd HH:mm");

String dateTime = ft.format(date);

return dateTime;

}

/**

* 从指定的字符串中提取Email

* content 指定的字符串

*/

public static String parse(String content) {

String email = null;

if (content==null || content.length()<1) {

return email;

}

//找出含有@

int beginPos;

int i;

String token = "@";

String preHalf="";

String sufHalf = "";

beginPos = content.indexOf(token);

if (beginPos>-1) {

//前项扫描

String s = null;

i= beginPos;

while(i>0) {

s = content.substring(i-1,i);

if (isLetter(s))

preHalf = s+preHalf;

else

break;

i--;

}

//后项扫描

i= beginPos+1;

while( i

s = content.substring(i,i+1);

if (isLetter(s))

sufHalf = sufHalf +s;

else

break;

i++;

}

//判断合法性

email = preHalf + "@" + sufHalf;

if (isEmail(email)) {

return email;

}

}

return null;

}

/**

* 判断是不是合法Email

* email Email地址

*/

public static boolean isEmail(String email) {

try {

if (email==null || email.length()<1 || email.length()>256) {

return false;

}

String check = "^([0-9a-zA-Z]+[_.0-9a-zA-Z-]+)@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2,3})$";

Pattern regex = Pattern.compile(check);

Matcher matcher = regex.matcher(email);

boolean isMatched = matcher.matches();

if(isMatched) {

return true;

} else {

return false;

}

} catch (RuntimeException e) {

return false;

}

}

/**

* 判断是不是合法字符

* c 要判断的字符

*/

public static boolean isLetter(String c) {

boolean result = false;

if (c==null || c.length()<0) {

return false;

}

//a-z

if (c.compareToIgnoreCase("a")>=0 && c.compareToIgnoreCase("z")<=0) {

return true;

}

//0-9

if (c.compareToIgnoreCase("0")>=0 && c.compareToIgnoreCase("9")<=0) {

return true;

}

//. - _

if (c.equals(".") || c.equals("-") || c.equals("_") ) {

return true;

}

return result;

}

/**

* 删除整个目录的全部图片

* filePath 要删除的目录路径

*/

public static boolean deleteImage(String filePath) {

try {

File file = new File(filePath);

File[] files = file.listFiles();

for(int i=0;i

try {

//系统文件不删除

if(!(files[i].getName()).equalsIgnoreCase("Thumbs.db")) {

if(files[i].isFile()) {

files[i].delete();

} else if(files[i].isDirectory()) {

files[i].delete();

} else {

files[i].delete();

}

}

} catch (RuntimeException e) {;

}

}

return true;

} catch (RuntimeException e) {

return false;

}

}

/**

* 保存网络上的图片到指定目录

* filePath 要保存到本地服务器的目录

* imagePath 网络图片的UIL地址

*/

public static boolean saveImage(String filePath,String imagePath) {

try {

if(imagePath.length()>1024 || imagePath.equals("")) {

return false;

}

String fileName = imagePath.substring(imagePath.lastIndexOf("/")+1,imagePath.length());

filePath = filePath+fileName;

URL url = null;

try {

url = new URL(imagePath);

} catch(Exception e) {

return false;

}

FilterInputStream in=(FilterInputStream) url.openStream();

File fileOut=new File(filePath);

FileOutputStream out=new FileOutputStream(fileOut);

byte[] bytes=new byte[1024];

int c;

while((c=in.read(bytes))!=-1) {

out.write(bytes,0,c);

}

in.close();

out.close();

return true;

} catch(Exception e) {

return false;

}

}

/**

* 写入日志

* filePath 日志文件的路径

* code 要写入日志文件的内容

*/

public static boolean print(String filePath,String code) {

try {

File tofile=new File(filePath);

FileWriter fw=new FileWriter(tofile,true);

BufferedWriter bw=new BufferedWriter(fw);

PrintWriter pw=new PrintWriter(bw);

System.out.println(getDate()+":"+code);

pw.println(getDate()+":"+code);

pw.close();

bw.close();

fw.close();

return true;

} catch (IOException e) {

return false;

}

}

/**

* 判断是不是合法手机

* handset 手机号码

*/

public static boolean isHandset(String handset) {

try {

if(!handset.substring(0,1).equals("1")) {

return false;

}

if (handset==null || handset.length()!=11) {

return false;

}

String check = "^[0123456789]+$";

Pattern regex = Pattern.compile(check);

Matcher matcher = regex.matcher(handset);

boolean isMatched = matcher.matches();

if(isMatched) {

return true;

} else {

return false;

}

} catch (RuntimeException e) {

return false;

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值