⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stringmanager.java

📁 字符串解析类,操作简单强大.
💻 JAVA
字号:
package com;
/**
 * Title:顶赢科技有限公司
 * Description:
 * Copyright:    Copyright (c) 2002
 * Company:顶赢科技有限公司
 * @author 杜永飞
 * @version 1.0
 */
import sun.io.*;
import java.io.*;
import java.text.NumberFormat;
import java.util.*;
import java.math.BigDecimal;
public class StringManager {

  public StringManager() {
  }
  //显示中文
  public static String switchChinese(String str) {
    try{
      String temp;
      byte[] temp_byte=str.getBytes("ISO8859-1");
      temp=new String(temp_byte,"GBK");
      return temp;
    }
    catch(Exception e){
      return null;
    }
  }
//显示中文  modify 2007-05-25
  public static String switchUTF8(String str) {
    try{
      String temp;
      byte[] temp_byte=str.getBytes("ISO8859-1");
      temp=new String(temp_byte,"utf-8");
      return temp;
    }
    catch(Exception e){
      return null;
    }
  }
  //将数字格式化成货币样式ren 07_01_04
  public static String Mformat(String str){
      double x=Double.parseDouble(str);
      NumberFormat formatter= NumberFormat.getNumberInstance();
      String s=formatter.format(x);
      return s;
  }
  public static String switchEnglish(String str) {
    try{
      String temp;
      byte[] temp_byte=str.getBytes("GBK");
      temp=new String(temp_byte,"ISO8859-1");
      return temp;
    }
    catch(Exception e){
      return null;
    }
  }
  //用odbc桥时,转中文(SUN BUG)
    public static String makeinsertstring(String s){
 	if (s==null) return "";
 	int oldStringLen=0;
 	oldStringLen=s.length();
 	StringBuilder spaceString = new StringBuilder();
 	for(int i=0;i<=oldStringLen;i++)
 	spaceString.append(" ");
 	s = s + spaceString.toString();
 	return s;
   }
  public static String toEncoding(String str,String encoding){
    try{
      byte[] from=str.getBytes();
      ByteToCharConverter converter=ByteToCharConverter.getConverter(encoding);
      char[] to=converter.convertAll(from);
      return new String(to);
    }
    catch(Exception e){
      return null;
    }
  }
  public static boolean isNumber(String str){
    if(str==null)
      return false;
    if(str.length()==0)
      return false;
    boolean number=true;
    int point=0;
    for(int i=0;i<str.length();i++){
      char tmp=str.charAt(i);
      if(i==0){
        if(!(tmp=='+'||tmp=='-'||(tmp>='0'&&tmp<='9')||tmp=='.'))
          number=false;
        if(tmp=='.')
          point++;
      }else{
        if(!((tmp>='0'&&tmp<='9')||tmp=='.'))
          number=false;
        if(tmp=='.')
          point++;
      }
    }
    if(point>1)
      number=false;
    return number;
  }
  public static String getHtml1(String contents){
    String _return="\r\n";
    int find=0;
    if(contents==null)
      return "";
    if(contents.length()==0)
      return "";
    //replace "return" by "<br>".
    while(true){
      find=contents.indexOf(_return,find);
      if(find==-1)
        break;
      contents=contents.substring(0,find)+"<br>"+contents.substring(find+2,contents.length());
    }
    return contents;
  }
  /**将字符串改为html文档格式*/
  public static String getHtml(String contents){
    String _return="\r\n";
    int find=0;
    if(contents==null)
      return "";
    if(contents.length()==0)
      return "";
    //replace "return" by "<br>".
    while(true){
      find=contents.indexOf(_return,find);
      if(find==-1)
        break;
      contents=contents.substring(0,find)+"<br>"+contents.substring(find+2,contents.length());
    }
    find=0;
    //replace "space" by "&nbsp;".
    while(true){
      find=contents.indexOf(" ",find);
      if(find==-1)
        break;
      contents=contents.substring(0,find)+"&nbsp;"+contents.substring(find+1,contents.length());
    }
    return contents;
  }
  public static String[] getTokenizers(String string){
    return getTokenizers(string,",");
  }
  /**分割带标记的字符串成数组*/
  public static String[] getTokenizers(String string,String delim){
    if(string==null)
      return null;
    StringTokenizer st=new StringTokenizer(string,delim);
    int count=st.countTokens();
    String[] returnValue;
    if(count==0){
      returnValue=new String[1];
      returnValue[0]=string;
      return returnValue;
    }
    returnValue=new String[count];
    int i=0;
    do{
      returnValue[i]=st.nextToken();
      i++;
    }while(st.hasMoreElements());
    return returnValue;
  }
  /**将回车、换行、双引号转换为空格*/
  public static String getNoReturn(String string){
    char oldChar1=13;//回车
    char oldChar2=10;//换行
    char oldChar3="\"".charAt(0);//引号
    char newChar=32;//空格
    if(string==null)
      return null;
    string=string.replace(oldChar1,newChar);
    string=string.replace(oldChar2,newChar);
    string=string.replace(oldChar3,newChar);
    return string;
  }
  public static String getTable(String[][] data){
    if(data!=null&&data.length>0)
      return getTable(data,data.length,data[0].length);
    else
      return "";
  }
  public static String getTable(String[][] data,int cols){
    if(data!=null&&data.length>0)
      return getTable(data,data.length,cols);
    else
      return "";
  }
  public static String getTable(String[][] data,int rows,int cols){
    if(data==null)
      return "";
    String returnValue="";
    for(int i=0;i<rows;i++){
      returnValue+="<tr>";
      for(int n=0;n<cols;n++){
        returnValue+="<td>"+data[i][n]+"</td>";
      }
      returnValue+="</tr>";
    }
    return returnValue;
  }
  public static String getTable(String[][] data,String tr,String td,String type){
    if(data==null)
      return "";
    String value="";
    for(int i=0;i<data.length;i++){
      //radio
//      if(type.equalsIgnoreCase("radio")){
//        value+="<tr "+tr+">";
//        value+="<td "+td+"><input type='radio' name='cb' value=\""+data[i][0]+"\"></td>";
//        for(int n=1;n<data[i].length;n++){
//          value+="<td "+td+">"+data[i][n]+"</td>";
//        }
//        value+="</tr>";
//      }
//      //radio+hidden
//      else 
    	if(type.equalsIgnoreCase("radio1")){
        value+="<tr "+tr+">";
        value+="<td "+td+"><input type='radio' name='cb' value=\""+data[i][0]+"\"><input type='hidden' name='hid' value=\""+data[i][0]+"\"></td>";
        for(int n=1;n<data[i].length;n++){
          value+="<td "+td+">"+data[i][n]+"</td>";
        }
        value+="</tr>";
      }
      //radio
      else if(type.equalsIgnoreCase("radio")){
        value+="<tr "+tr+">";
        value+="<td "+td+"><input type='radio' name='rd' value=\""+data[i][0]+"\" "+(i==0?"checked":"")+"></td>";
        for(int n=1;n<data[i].length;n++){
          value+="<td "+td+">"+data[i][n]+"</td>";
        }
        value+="</tr>";
      }
      else{
        value+="<tr "+tr+">";
        for(int n=0;n<data[i].length;n++){
          value+="<td "+td+">"+data[i][n]+"</td>";
        }
        value+="</tr>";
      }
    }
    return value;
  }
  public static String getTable(String[][] data,String[][] input,String td){
    if(data==null)
      return "";
    String returnValue="";
    for(int i=0;i<data.length;i++){
      returnValue+="<tr id=\"trs\" ondblclick=\"on_dblclick("+i+");\" onclick=\"displayMe("+i+");\" bgcolor=\"#E3E3E3\" style=\"cursor:hand\">";
      for(int n=0;n<data[0].length;n++){
        if(data[i][n].length()==0)
          data[i][n]="&nbsp;";
        boolean find=false;
        for(int m=0;m<input.length;m++){
          if(input[m][0].equals(""+n)){
            if(input[m][1].equalsIgnoreCase("hidden"))
              returnValue+="<td "+td+"><input type='"+input[m][1]+"' name='"+input[m][2]+"' value=\""+data[i][n]+"\">"+data[i][n]+"</td>";
            else
              returnValue+="<td "+td+"><input type='"+input[m][1]+"' name='"+input[m][2]+"' value=\""+data[i][n]+"\"></td>";
            find=true;
          }
        }
        if(!find)
          returnValue+="<td "+td+">"+data[i][n]+"</td>";
      }
      returnValue+="</tr>";
    }
    return returnValue;
  }

  public static String getOptions(String[][] data,String key){
    String returnV="";
    if(data!=null){
      for(int i=0;i<data.length;i++){
        if(data[i][0].equals(key))
          returnV+="<option value='"+data[i][0]+"' selected>"+data[i][1]+"</option>";
        /*
        else if(data[i][1].equals("系统赋值"))
        	returnV+="<option value='\""+data[i][0]+"\"'>"+data[i][1]+"</option>";*/
        else
          returnV+="<option value='"+data[i][0]+"'>"+data[i][1]+"</option>";
      }
    }
    return returnV;
  }
  public static String getOptions(String[][] data){
    return getOptions(data,"");
  }
  public static String getRadios(String name,String[][] data,String style,String key){
    String returnV = "";
    if (data != null) {
      if (key.length() == 0) {
        for (int i = 0; i < data.length; i++) {
          if (i == 0)
            returnV += "<input type='radio' name='" + name + "' value='" +
                data[i][0] + "' " + style + " checked>" + data[i][1] +
                "&nbsp;&nbsp;";
          else
            returnV += "<input type='radio' name='" + name + "' value='" +
                data[i][0] + "' " + style + ">" + data[i][1] +
                "&nbsp;&nbsp;";
        }
      }
      else {
        for (int i = 0; i < data.length; i++) {
          if (data[i][0].equalsIgnoreCase (key))
            returnV += "<input type='radio' name='" + name + "' value='" +
                data[i][0] + "' " + style + " checked>" + data[i][1] +
                "&nbsp;&nbsp;";
          else
            returnV += "<input type='radio' name='" + name + "' value='" +
                data[i][0] + "' " + style + ">" + data[i][1] +
                "&nbsp;&nbsp;";
        }
      }
    }
    return returnV;
  }
  public static String getRadios(String name,String[][] data,String style){
    return getRadios(name,data,style,"");
  }

  public static String[][] sort(String[][] data,int sortedColumn,boolean isString){
	return sort(data,sortedColumn,true,isString);
  }
  public static String[][] sort(String[][] data,int sortedColumn,boolean isAsc,boolean isString){
	int[] sortedColumn1=new int[1];
	sortedColumn1[0]=sortedColumn;
	boolean[] isAsc1={isAsc};
	boolean[] isString1=new boolean[1];
	isString1[0]=isString;
	return sort(data,sortedColumn1,isAsc1,isString1);
  }
  public static String[][] sort(String[][] data,int[] sortedColumn,boolean[] isAsc,boolean[] isString){
	if(data==null)
	  return null;
	if(data.length==0)
	  return data;
	boolean isChange=true;
	for(int i=data.length-1;i>0&&isChange;i--){
	  isChange=false;
	  for(int j=0;j<i;j++){
		for(int m=0;m<sortedColumn.length;m++){
		  String result=compare(j,data,sortedColumn[m],isAsc[m],isString[m]);
		  if(!result.equals("equals")){
			if(result.equals("changed"))
			  isChange=true;
			break;
		  }
		}
	  }
	}
	return data;
  }
  private static String compare(int j,String[][] data,int sortedColumn,boolean isAsc,boolean isString){
	String result;//changed,not_changed,equals
	String tmp=null;
	if(isAsc){
	  if((isString&&(data[j][sortedColumn].compareTo(data[j+1][sortedColumn]))>0)||
	  (!isString&&(Double.parseDouble(data[j][sortedColumn]==null?"0":data[j][sortedColumn])>
	  Double.parseDouble(data[j+1][sortedColumn]==null?"0":data[j+1][sortedColumn])))){
		for(int l=0;l<data[0].length;l++){
		  tmp=data[j+1][l];
		  data[j+1][l]=data[j][l];
		  data[j][l]=tmp;
		}
		result="changed";
	  }else if((isString&&(data[j][sortedColumn].compareTo(data[j+1][sortedColumn]))==0)||
	  (!isString&&(Double.parseDouble(data[j][sortedColumn]==null?"0":data[j][sortedColumn])==
	  Double.parseDouble(data[j+1][sortedColumn]==null?"0":data[j+1][sortedColumn])))){
		result="equals";
	  }else{
		result="not_changed";
	  }
	}else{
	  if((isString&&(data[j][sortedColumn].compareTo(data[j+1][sortedColumn]))<0)||
	  (!isString&&(Double.parseDouble(data[j][sortedColumn]==null?"0":data[j][sortedColumn])<
	  Double.parseDouble(data[j+1][sortedColumn]==null?"0":data[j+1][sortedColumn])))){
		for(int l=0;l<data[0].length;l++){
		  tmp=data[j+1][l];
		  data[j+1][l]=data[j][l];
		  data[j][l]=tmp;
		}
		result="changed";
	  }else if((isString&&(data[j][sortedColumn].compareTo(data[j+1][sortedColumn]))==0)||
	  (!isString&&(Double.parseDouble(data[j][sortedColumn]==null?"0":data[j][sortedColumn])==
	  Double.parseDouble(data[j+1][sortedColumn]==null?"0":data[j+1][sortedColumn])))){
		result="equals";
	  }else{
		result="not_changed";
	  }
	}
	return result;
  }
  public static void include(PrintWriter out,String file)  throws IOException{
    include(out,file,false);
  }
  //在SERVLET中输出文件(类似JSP中INCLUDE标签)
  public static void include(PrintWriter out,String file,boolean chinese)  throws IOException{
    RandomAccessFile raf=new RandomAccessFile(file,"r");
    String tmp;
    while((tmp=raf.readLine())!=null){
      if(chinese)
        out.println(switchChinese(tmp));
      else
        out.println(tmp);
    }
  }
  /**
   * 读文本文件
   * */
  public static String readFile(String fileName,boolean isAbsolutePath) throws IOException{
    if(!isAbsolutePath){
      String path=System.getProperty("realPath");
      if (!path.endsWith(System.getProperty("file.separator")))
        path += System.getProperty("file.separator");
      fileName=path+fileName;
    }
//    if(!new File(fileName).exists()){
//    	return null;
//    }
    int length=(int)(new File(fileName)).length();
    byte[] buffer=new byte[length];
    FileInputStream fin=new FileInputStream(fileName);
    fin.read(buffer);
    fin.close() ;
    return new String(buffer,"GBK");
  }
public static synchronized double getRound(int scale,double dSource){
  BigDecimal deSource = new BigDecimal(dSource);
  return deSource.setScale(scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}
/**
 * 将单个 ' 转义为 ''
 * @param sqlsyn
 * @return
 */
public static String transferredMeaning(String sqlsyn){
    StringBuilder sb = new StringBuilder();
    for(int j=0;j<sqlsyn.length() ;j++ ){
        char _tmp = sqlsyn.charAt(j) ;
        sb.append(_tmp) ;
        if(_tmp=='\'')
          sb.append(_tmp) ;
      }
    return sb.toString();
}

public static void main(String[] arg) throws Exception{
	StringManager sm =new StringManager();
	System.out.println(sm.Mformat("000111111111.1111"));		
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -