Erro básico de conversão..mas não sei como resolver

Olá estou com um problema que acredito ser bem facil de resolver mas eu não to conseguindo… procurei no fórum e não achei a resposta
o problema é o seguinte tenho uma String s, com valor s = “1,32” tenho que pegar esta informação e gravar no meu banco, minha duvida é no momento de pegar esta string e transforma-la para Double, Float ou alguma coisa que der certo, para poder persistir na base, pois só funciona se fosse s = “1.32” aí tudo bem mas “1,32” não rola da erro.

public class Teste {	
	public static void main(String args[]){
		String s = "1,32";
		Double d;
		Float f;
		d = Double.parseDouble(s);
		f = Float.parseFloat(s);
		
		System.out.println(d);
		System.out.println(f);
	}
}

Dá o erro abaixo:

Exception in thread “main” java.lang.NumberFormatException: For input string: “1,32”
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at br.com.sumus.teste.TesteData.main(TesteData.java:12)

Só funciona se…

public class Teste {	
	public static void main(String args[]){
		String s = "1,32";
		Double d;
		Float f;
		d = Double.parseDouble(s);
		f = Float.parseFloat(s);
		
		System.out.println(d);
		System.out.println(f);
	}
}

Desde já agradeço.

Forma rapida:

[code]public class Teste {
public static void main(String args[]){
String s = “1,32”;
double d;
float f;
d = Double.parseDouble(s.replace(’,’,’.’));
f = Float.parseFloat(s.replace(’,’,’.’));

	System.out.println(d);
	System.out.println(f);
}

}[/code]

O problema é que o valor que dei como exemplo ele não é fixo, e a classe que você me passou como exemplo ela funciona até 999,99 valores maior por exemplo se colocar 1.500,32 dá o erro, abaixo:

Exception in thread “main” java.lang.NumberFormatException: multiple points
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at br.com.sumus.teste.TesteData.main(TesteData.java:12)

preciso de algo que trate qualquer valor.

resolve ?

import java.text.*;
import java.util.*;

.....
	String inStr = "1.500,32"; // "1,32", etc
	Locale locBrazil = new Locale("pt", "BR");
	NumberFormat nf = NumberFormat.getInstance(locBrazil);
	Number n = nf.parse(inStr);

Cara da uma olhada na API de NumberFormat, nela você pode especificar um Locale que encapsula estas diferenças de formato, tipo separar milhares por pontos ou vírgulas etc.

IndyanaJones Valeu, cara deu certo…
E obrigado a todos que responderam.