سؤال

أحاول تحويل سلسلة إلى قيمة مزدوجة ولكنها لا تعود لي ما أتوقع ...

double dbl;
Double.TryParse("20.0", out dbl);

تعود هذه القطعة من التعليمات البرمجية 200.0 (بدلا من 20.0) كقيمة مزدوجة. أي فكرة لماذا؟

هل كانت مفيدة؟

المحلول

يجب أن تمر InvariantCulture إلى الطريقة.

السبب وراء ذلك هو أن الإعدادات الإقليمية الخاصة بك ربما مجموعة . كحرف فاصل وليس نقطة عشرية.

double.TryParse("20.0", NumberStyles.Any, 
                CultureInfo.InvariantCulture, out x);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top