http://stackoverflow.com/a/9027379


e risposte susseguenti a questa ci sono vari esempi