Gremlins
Vandaag uren lang gezocht naar niets: trailing blanks.
Je ziet ze niet, maar ze zijn er wel.
Ik verdacht de Java programmatuur al van hogere machten en krachten.
De Duvel in de code of minstens zo erg: Gremlins in de code.
Lesson learned:
Gebruik een afsluiter tekentje:
System.out.println(viewerParameter.getDocumentId() + ";");
of beter nog:
Log.debug(viewerParameter.getDocumentId() + ";");
Dan zie je die !"#§@ blanks tenminste.
Zo is meer weer eens bewezen:
Niet alles is wat het lijkt.
Vandaag uren lang gezocht naar niets: trailing blanks.
Je ziet ze niet, maar ze zijn er wel.
Ik verdacht de Java programmatuur al van hogere machten en krachten.
De Duvel in de code of minstens zo erg: Gremlins in de code.
Lesson learned:
Gebruik een afsluiter tekentje:
System.out.println(viewerParameter.getDocumentId() + ";");
of beter nog:
Log.debug(viewerParameter.getDocumentId() + ";");
Dan zie je die !"#§@ blanks tenminste.
Zo is meer weer eens bewezen:
Niet alles is wat het lijkt.
When I use a word,” Humpty Dumpty said, in a rather scornful tone, “it means just what I choose it to mean - neither more nor less.”“The question is,” said Alice, “whether you can make words mean so many different things.”“The question is,” said Humpty Dumpty, “which is to be master - that’s all.”
http://nl.wikipedia.org/wiki/Humpty_Dumpty
In Java bestaat er wel de "helper" methode trim() maar die verwijdert zowel leading als trailing blanks.
Opmerkelijk dat je dan meer moeite moet doen om alleen de trailing blanks te verwijderen.
Zie deze opgave:
http://www.roseindia.net/java/java-tips/data/strings/q-pr-string-using-loops/q-pr-trimright.shtml
En een van de vele mogelijke oplossing, deze met een regular expression:
http://www.rgagnon.com/javadetails/java-0352.html
Meer pragmatisch: het werkt en dat is al heel wat.
Minstens zo vreemd is dat de aanbevolen import kennelijk gewoon "vergeten" mag worden:
import java.util.regex.*;
En dat het ding het dan toch doet.
Java blijft amazing!
In Java bestaat er wel de "helper" methode trim() maar die verwijdert zowel leading als trailing blanks.
Opmerkelijk dat je dan meer moeite moet doen om alleen de trailing blanks te verwijderen.
Zie deze opgave:
http://www.roseindia.net/java/java-tips/data/strings/q-pr-string-using-loops/q-pr-trimright.shtml
En een van de vele mogelijke oplossing, deze met een regular expression:
http://www.rgagnon.com/javadetails/java-0352.html
/* remove trailing whitespace */Het vergt meer gegoogel om "\\s+$" te verklaren.
public static String rtrim(String source) {
return source.replaceAll("\\s+$", "");
}
Meer pragmatisch: het werkt en dat is al heel wat.
Minstens zo vreemd is dat de aanbevolen import kennelijk gewoon "vergeten" mag worden:
import java.util.regex.*;
En dat het ding het dan toch doet.
Java blijft amazing!
No comments:
Post a Comment