📄 utilstring.java
字号:
}
/*
* Check to see if the input string is an integer.
*/
public static boolean isInteger(String inputString)
{
int testInt;
try
{
testInt = Integer.parseInt(inputString);
return true;
} catch (Exception e) {
return false;
}
}
/*
* Convert a string to an int or return a default value.
*/
public static int intValue(String inputString,int defaultValue )
{
try
{
return Integer.parseInt(inputString);
} catch (Exception e) {
return defaultValue;
}
}
/*
* Convert a date in the format MM/DD/YYYY to YYYYMMDD
*/
public static String toYMD(String inputDate)
{
String day,month;
FieldTokenizer ft;
String[] ftFields;
ft = new FieldTokenizer(inputDate,'/',false);
ftFields = ft.getFields();
if ( ftFields.length == 1 )
{
return inputDate;
} else if ( ftFields.length == 3 ) {
month = ftFields[0];
if ( month.length() == 1 ) month = "0" + month;
day = ftFields[1];
if ( day.length() == 1 ) day = "0" + day;
return ftFields[2] + month + day;
}
return inputDate;
}
/*
* This method formats an action Hashtable for display.
*/
public static String actionToString(Hashtable displayAction)
{
StringBuffer displayBuffer = new StringBuffer();
String displayType,tableName;
tinySQLWhere displayWhere;
tsColumn createColumn,displayColumn;
boolean groupBy=false,orderBy=false;
int i;
Vector displayTables,displayColumns,columnDefs,displayValues,
displayContext;
Hashtable tables;
displayType = (String)displayAction.get("TYPE");
displayBuffer.append(displayType + " ");
displayWhere = (tinySQLWhere)null;
displayContext = (Vector)null;
displayColumns = (Vector)null;
if ( displayType.equals("SELECT") )
{
tables = (Hashtable)displayAction.get("TABLES");
displayTables = (Vector)tables.get("TABLE_SELECT_ORDER");
displayColumns = (Vector)displayAction.get("COLUMNS");
displayWhere = (tinySQLWhere)displayAction.get("WHERE");
for ( i = 0; i < displayColumns.size(); i++ )
{
displayColumn = (tsColumn)displayColumns.elementAt(i);
if ( displayColumn.getContext("GROUP") )
{
groupBy = true;
continue;
} else if ( displayColumn.getContext("ORDER") ) {
orderBy = true;
continue;
}
if ( i > 0 ) displayBuffer.append(",");
displayBuffer.append((String)displayColumn.name);
}
displayBuffer.append(" FROM " );
for ( i = 0; i < displayTables.size(); i++ )
{
if ( i > 0 ) displayBuffer.append(",");
displayBuffer.append((String)displayTables.elementAt(i));
}
} else if ( displayType.equals("DROP_TABLE") ) {
tableName = (String)displayAction.get("TABLE");
displayBuffer.append(tableName);
} else if ( displayType.equals("CREATE_TABLE") ) {
tableName = (String)displayAction.get("TABLE");
displayBuffer.append(tableName + " (");
columnDefs = (Vector)displayAction.get("COLUMN_DEF");
for ( i = 0; i < columnDefs.size(); i++ )
{
if ( i > 0 ) displayBuffer.append(",");
createColumn = (tsColumn)columnDefs.elementAt(i);
displayBuffer.append(createColumn.name + " " + createColumn.type
+ "( " + createColumn.size + "," + createColumn.decimalPlaces
+ ")");
}
displayBuffer.append(")");
} else if ( displayType.equals("INSERT") ) {
tableName = (String)displayAction.get("TABLE");
displayBuffer.append("INTO " + tableName + "(");
displayColumns = (Vector)displayAction.get("COLUMNS");
for ( i = 0; i < displayColumns.size(); i++ )
{
if ( i > 0 ) displayBuffer.append(",");
displayBuffer.append((String)displayColumns.elementAt(i));
}
displayBuffer.append(") VALUES (");
displayValues = (Vector)displayAction.get("VALUES");
for ( i = 0; i < displayValues.size(); i++ )
{
if ( i > 0 ) displayBuffer.append(",");
displayBuffer.append((String)displayValues.elementAt(i));
}
displayBuffer.append(")");
} else if ( displayType.equals("UPDATE") ) {
tableName = (String)displayAction.get("TABLE");
displayBuffer.append(tableName + " SET ");
displayColumns = (Vector)displayAction.get("COLUMNS");
displayValues = (Vector)displayAction.get("VALUES");
displayWhere = (tinySQLWhere)displayAction.get("WHERE");
for ( i = 0; i < displayColumns.size(); i++ )
{
if ( i > 0 ) displayBuffer.append(",");
displayBuffer.append((String)displayColumns.elementAt(i)
+ "=" + (String)displayValues.elementAt(i));
}
} else if ( displayType.equals("DELETE") ) {
tableName = (String)displayAction.get("TABLE");
displayBuffer.append(" FROM " + tableName);
displayWhere = (tinySQLWhere)displayAction.get("WHERE");
}
if ( displayWhere != (tinySQLWhere)null )
{
displayBuffer.append(displayWhere.toString());
}
if ( groupBy )
{
displayBuffer.append(" GROUP BY ");
for ( i = 0; i < displayColumns.size(); i++ )
{
displayColumn = (tsColumn)displayColumns.elementAt(i);
if ( !displayColumn.getContext("GROUP") ) continue;
if ( !displayBuffer.toString().endsWith(" GROUP BY ") )
displayBuffer.append(",");
displayBuffer.append(displayColumn.name);
}
}
if ( orderBy )
{
displayBuffer.append(" ORDER BY ");
for ( i = 0; i < displayColumns.size(); i++ )
{
displayColumn = (tsColumn)displayColumns.elementAt(i);
if ( !displayColumn.getContext("ORDER") ) continue;
if ( !displayBuffer.toString().endsWith(" ORDER BY ") )
displayBuffer.append(",");
displayBuffer.append(displayColumn.name);
}
}
return displayBuffer.toString();
}
/*
* Find the input table alias in the list provided and return the table name.
*/
public static String findTableForAlias(String inputAlias,Vector tableList)
throws tinySQLException
{
int i,aliasAt;
String tableAndAlias;
tableAndAlias = findTableAlias(inputAlias,tableList);
aliasAt = tableAndAlias.indexOf("->");
return tableAndAlias.substring(0,aliasAt);
}
/*
* Find the input table alias in the list provided and return the table name
* and alias in the form tableName=tableAlias.
*/
public static String findTableAlias(String inputAlias,Vector tableList)
throws tinySQLException
{
int i,aliasAt;
String tableAndAlias,tableName,tableAlias;
for ( i = 0; i < tableList.size(); i++ )
{
tableAndAlias = (String)tableList.elementAt(i);
aliasAt = tableAndAlias.indexOf("->");
tableName = tableAndAlias.substring(0,aliasAt);
tableAlias = tableAndAlias.substring(aliasAt + 2);
if ( inputAlias.equals(tableAlias) )
{
return tableAndAlias;
}
}
throw new tinySQLException("Unable to identify table alias "
+ inputAlias);
}
/*
* Determine a type for the input string.
*/
public static int getValueType (String inputValue)
{
double doubleValue;
long intValue;
if ( inputValue.startsWith("\"") |
inputValue.startsWith("'") )
return Types.CHAR;
try
{
/*
* If the parse methods don't generate an exception this is a
* valid number
*/
if ( inputValue.trim().indexOf(".") > -1 )
{
doubleValue = Double.parseDouble(inputValue.trim());
return Types.FLOAT;
} else {
intValue = Long.parseLong(inputValue.trim());
return Types.INTEGER;
}
} catch (Exception e) {
return Types.CHAR;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -