darklord You're welcome | TBone a écrit a écrit :
là où je suis étonné par ta réponse c'est qu'on m'a toujours dit que les String et StringBuffer étaient limités en taille...
|
Absolument pas. Tu es limité physiquement par la mémoire RAM disponible, c'est tout. Je vais meme te donner une chouette méthode qui permet de remplacer A par B dans une String
Code :
- /**
- * Replace all occurrences of oldToken in s with newToken, or only the first occurrence if fAll is false. <br>
- * replace("aaaa", "aa", "bbb", false) returns "bbbaa"<br> replace("aaaa", "aa", "bbb", true) returns "bbbbbb"
- */
- public static String replace(String s, String oldToken, String newToken, boolean fAll) {
- if ((s == null) || (oldToken == null) || (newToken == null)) {
- throw new IllegalArgumentException("Null argument(s) seen" );
- }
- int oldTokenLen = oldToken.length();
- StringBuffer sb = null;
- int oldPos = 0;
- int pos = s.indexOf(oldToken, oldPos);
- if (oldPos > -1) {
- sb = new StringBuffer(s.length());
- }
- for (; pos > -1; pos = s.indexOf(oldToken, oldPos)) {
- sb.append(s.substring(oldPos, pos));
- sb.append(newToken);
- oldPos = pos + oldTokenLen;
- if (!fAll) {
- break;
- }
- }
- return ((oldPos > 0) ? sb.append(s.substring(oldPos)).toString() : s);
- }
|
---------------
Just because you feel good does not make you right
|