Index: lutinutil/src/java/org/codelutin/util/StringUtil.java diff -u lutinutil/src/java/org/codelutin/util/StringUtil.java:1.23 lutinutil/src/java/org/codelutin/util/StringUtil.java:1.24 --- lutinutil/src/java/org/codelutin/util/StringUtil.java:1.23 Sun Dec 2 05:16:20 2007 +++ lutinutil/src/java/org/codelutin/util/StringUtil.java Wed Dec 5 02:59:44 2007 @@ -22,9 +22,9 @@ * * @author POUSSIN Benjamin * Copyright Code Lutin - * @version $Revision: 1.23 $ + * @version $Revision: 1.24 $ * - * Mise a jour: $Date: 2007-12-02 05:16:20 $ + * Mise a jour: $Date: 2007-12-05 02:59:44 $ * par : $Author: tchemit $ */ package org.codelutin.util; @@ -180,58 +180,7 @@ * @return array of string */ static public String[] split(String args, String separator) { - //TODO test return split(openingChars, closingChars, args, separator); -// if (args == null) { -// return new String[0]; -// } -// -// List result = new ArrayList(); -// -// int start = 0; -// int end = 0; -// StringBuffer op = new StringBuffer(); // stack of {([ currently open -// char last = '\0'; // contains " or ' if string is openned -// -// for (int i = 0; i < args.length(); i++) { -// char c = args.charAt(i); -// if (c == '\\') { -// // pass next char -// i++; -// } else if (last != '"' && last != '\'') { -// if (c == '(' || c == '{' || c == '[') { -// // open ({| -// op.append(c); -// } else if (c == ')' || c == '}' || c == ']') { -// // close ({[ -// op.deleteCharAt(op.length() - 1); -// } else if (c == '"' || c == '\'') { -// // open string " or ' -// last = c; -// } else if (op.length() == 0 -// && args.regionMatches(i, separator, 0, separator -// .length())) { -// // end of one arguement -// end = i; -// // pass separator -// i += separator.length() - 1; -// -// String a = args.substring(start, end); -// result.add(a); -// // start of next argument -// start = end + separator.length(); -// } -// } else if (c == last) { -// // close string " or ' -// last = '\0'; -// } -// } -// -// if (start < args.length()) { -// String a = args.substring(start, args.length()); -// result.add(a); -// } -// return result.toArray(new String[result.size()]); } @@ -281,7 +230,7 @@ for (int i = 0; i < args.length(); i++) { char c = args.charAt(i); - if (c == '/') { + if (c == '\\') { // pass next char i++; } else if (last != '"' && last != '\'') { @@ -587,6 +536,10 @@ /** * Convertir un nom en une constante Java + * + * Les seuls caractères autorisés sont les alpha numériques, ains + * que l'underscore. tous les autres caractères seront ignorés. + * * @param name le nom à convertir * @return la constante générée */ @@ -599,7 +552,9 @@ continue; } if (!Character.isLetter(c)) { - + if (c=='_') { + sb.append('_'); + } continue; } if (Character.isUpperCase(c)) {