public static Properties parseAttributes(String string) {
		Properties result = new Properties();
		if (string == null)
			return result;
		StringTokenizer keyValuePairs = new StringTokenizer(string, ";");
		StringTokenizer keyValuePair;
		String key;
		String value;
		while (keyValuePairs.hasMoreTokens()) {
			keyValuePair = new StringTokenizer(keyValuePairs.nextToken(), ":");
			if (keyValuePair.hasMoreTokens())
				key = keyValuePair.nextToken().trim();
			else
				continue;
			if (keyValuePair.hasMoreTokens())
				value = keyValuePair.nextToken().trim();
			else
				continue;
			if (value.startsWith("\""))
				value = value.substring(1);
			if (value.endsWith("\""))
				value = value.substring(0, value.length() - 1);
			result.setProperty(key.toLowerCase(), value);
		}
		return result;
	}
public static Properties parseAttributes ( String string ) { Properties result = new Properties ( ) ; if ( string == null ) return result ; StringTokenizer keyValuePairs = new StringTokenizer ( string , ";" ) ; StringTokenizer keyValuePair ; String key ; String value ; while ( keyValuePairs . hasMoreTokens ( ) ) { keyValuePair = new StringTokenizer ( keyValuePairs . nextToken ( ) , ":" ) ; if ( keyValuePair . hasMoreTokens ( ) ) key = keyValuePair . nextToken ( ) . trim ( ) ; else continue ; if ( keyValuePair . hasMoreTokens ( ) ) value = keyValuePair . nextToken ( ) . trim ( ) ; else continue ; if ( value . startsWith ( "\"" ) ) value = value . substring ( 1 ) ; if ( value . endsWith ( "\"" ) ) value = value . substring ( 0 , value . length ( ) - 1 ) ; result . setProperty ( key . toLowerCase ( ) , value ) ; } return result ; }
This method parses a String with attributes and returns a Properties
object.

@param string
a String of this form: 'key1="value1"; key2="value2";...
keyN="valueN" '
@return a Properties object