Одобрено: Fortect
За последние несколько дней некоторые из наших пользователей сообщали об ошибках округления xslt.
Мы столкнулись с поразительной проблемой округления XSLT и форматирования чисел. Скажем, у меня есть такое число, как 131 855, и я также хочу округлить его до пары или трех знаков после запятой. Я ожидаю 131,86 в основном из-за опции, но функция xslt Round () округляет ее до 131,85. Я доказал, что с помощью «круглого (131,855 * 100) деления 100» для шеи это не сработает. С другой стороны, как только мне нужно округлить номер телефона по строкам 127,855, тот же код округлит его от 127 до 86, то есть «округлить (127,855 1. 100) div 100». округлено до 131,76 !! Очень странный.Мы, возможно, пробовали использовать format-number (), однако функция, которая на самом деле дает странный выигрыш. Например, я беру число 349615.225 I и беру на нем номер формата, где, номер формата (349615.225, ‘#. ##’) отключает 349615,22, и я жду десятичных частей 0,25. Но если я использую широкий диапазон форматов около 131,855, он преобразуется в 131,86 …
Я также пробовал снова и снова использовать return () внутри work format-number (), но это дало огромное удовлетворение.
Мы используем XSLT 1.0. Перемещение, которое поможет XSLT 2.0, кажется сложной задачей. Обходной путь ничего не стоит, но я вижу, что использую функцию капучино и говорю это из XSL для завершения.
задан 8 окт, 15 собирается в 4:57
Не тот ответ, который вам нужен? Просмотрите все другие вопросы, отмеченные округлением Xml Xslt Xslt-1.0, и задайте свой вопрос.
Выполнение round ()
округляет заданное число до наиболее близкого целого, и фактическое использование on ()
может плохо округлять наше собственное число. format-number ()
форматирует данные с помощью выбора продуктов, который усекает данные (предположительно), что может привести к потере ценности.
Использование каждого типа, относящегося к round ()
и format-number ()
, должно работать эффективно.
5.225
* Select = "format-number (round (100
ответил 24 окт. Я в 5:40 утра.
5.297 22 золотых значка 1111 значков из драгоценных металлов 2121 бронзовый значок
Самое удивительное, что можно было понять, – это то, что когда человек пишет реальное число, например, 131 855, его измеримое значение не идеально находится между 131,85 и 131,86. Вероятно, не будет числа с плавающим моментом двойной точности, которое численно составляет 131 855, поэтому реальная ценность человека, которого вы контролируете, может быть ниже или немного выше. Эта неточность возникает сразу после того, как вы записываете число, а не только тогда, когда вы на него полагаетесь. Если ваша конечная организация умножит его на 100, эта разница, вероятно, увеличится, а если вы используете round (), сайт перейдет к ближайшему целому числу, что чаще всего зависит от того, увеличивается или уменьшается приближение. Поскольку XSLT 1.0 содержит только числа с плавающей запятой во времени, обходного пути для этого формата проблемы не существует.
Одобрено: Fortect
Fortect — самый популярный и эффективный в мире инструмент для ремонта ПК. Миллионы людей доверяют ему обеспечение быстрой, бесперебойной и безошибочной работы своих систем. Благодаря простому пользовательскому интерфейсу и мощному механизму сканирования Fortect быстро находит и устраняет широкий спектр проблем Windows — от нестабильности системы и проблем с безопасностью до проблем с управлением памятью и производительностью.
а>
Десять можно использовать в XSLT 2.0 Numbers в повседневной жизни. намного больше, чем люди ожидают.
ответ дан 15 окт в 8:23.
141k 1010 золотых значков 7979 серебряных коллекционных значков 144 144 бронзовых знака
Повысьте производительность вашего компьютера с помощью этой простой загрузки. г.