ClustrMaps

The roadrunner is back as never before! See also: My homepage or my very obsolete site
If by any means entries in my blog are considered to be harmful or damaging, please let me know (add comment) or just mail me. In this (unhopely) case I will remove or change the contents.

Thursday, May 07, 2009

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.


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
/* remove trailing whitespace */
public static String rtrim(String source) {
return source.replaceAll("\\s+$", "");
}
Het vergt meer gegoogel om "\\s+$" te verklaren.
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:

Blog Archive