2013-04-01 4 views
0

Je vois une différence de comportement entre l'émulateur dans Visual Studio et mon Lumia 820 lorsque j'essaie d'analyser un doublon. Si j'ai une chaîne qui représente string stringdouble = 3.434233, l'émulateur l'analyse correctement à la double valeur correspondante, mais sur mon Lumia 820 en mode débogage, je dois remplacer le point par une virgule pour que cela fonctionne. Qu'est-ce qui cause cette différence?Différentes représentations d'un point décimal

+4

ce que je comprends ici est, nokia lumia est en train de convertir votre chaîne représentait le nombre de 3,434233 au lieu de 3,434233. Si c'est le cas, veuillez répondre afin que je puisse éditer la question correctement –

+0

Je suppose que c'est quelque chose de connecté avec les paramètres de localisation du téléphone –

Répondre

4

C'est un problème de culture.

Votre simulateur et votre téléphone ont probablement différentes cultures configurées, c'est pourquoi vous avez des différences de résultats. Utiliser un appareil ou une culture invariante.

Je recommande d'utiliser soit culture invariante partout

double.Parse("3.5", CultureInfo.InvariantCulture) 

ou utilisateurs actuels culture

double number = Double.Parse("202.667,40", CultureInfo.CurrentCulture); 

pour les analyser et traduire les nombres en chaînes, cela vous aidera à éviter les bugs vous avez décrit

+0

Merci pour cette réponse rapide :-) – Sebastian

Questions connexes