У меня довольно странная проблема. У меня есть очень простое приложение, которое читает некоторые данные из файла в формате csv и рисует полярную «бабочку» в форме. Однако некоторые люди в европейских странах получают очень странную кривую, и когда я изменил программу для вывода некоторых значений выборки, чтобы попытаться выяснить, что происходит, это только дало мне больше вопросов!
Вот пример ожидаемых значений и того, что вместо этого получает один конкретный пользователь:
EXPECTED -> SEEN
0.00 0.00 -> 0,00 0,00
5.00 1.35 -> 5,00 1346431626488,41
10.00 2.69 -> 10,00 2690532522738,65
Таким образом, все значения справа (которые вычисляются в моей программе) умножаются на коэффициент 10 ^ 12 !! Как же это может произойти в CLR? первые числа - 0, 5, 10 - просто создаются простым циклом, который записывает вывод, используя: value += 5.
Код, производящий эти вычисления, использует интерполяцию с использованием библиотеки alglib.net, но проблема также возникает с 2 другими значениями, которые извлекаются из xml, возвращаемого из http get, а затем преобразуются из радиан в градусы.
Также не совсем проблема, но почему десятичные значения печатаются с запятыми вместо десятичных точек? Выходной код представляет собой простой string.Format("{0:F}", value)
, где значение является двойным?
Так с какой стати некоторые значения будут сдвинуты на 12 десятичных знаков, но не другие, и только в некоторых странах? Да, другие запустили приложение без проблем ... Не уверен, есть ли какое-либо отношение, но этот вывод пришел из Нидерландов.