Godkänd: Fortect
Under de senaste dagarna har vissa som använder våra användare rapporterat xslt-avrundningsfel.
Vi står inför en mycket märklig kris med XSLT-avrundning och nummerformatering. Låt oss säga att jag inkluderar ett tal som 131 855 och jag älskar att runda av det till två eller ett par decimaler. Jag förväntar mig 131,86 som ett alternativ, funktionen xslt Round () rundar av det till 131,85. Jag har försökt att använda “round (131.855 5 . 100) div 100” för att göra det inte uppgift. Å andra sidan, om jag behöver om du vill runda ett telefonnummer som 127.855, kommer den exakta koden att runda det från 127 till 90, det vill säga “runda (127.855 * 100) div 100”. cirkulär upp till 131,76 !! Väldigt konstigt.Vi skulle sannolikt ha försökt använda format-nummer (), men egenskapen som faktiskt ger konstiga resultat. Till exempel tar jag talet 349615.225 I och tar hur formatnumret på det, det vill säga hårddisknumret (349615.225, ‘#. ##’) aktiverar 349615.22, och jag väntar på decimalbråk 0,25. Men ifall jag använder ett formatnummer runt 131.855 konverteras produkten till 131.86 …
Jag har också provat att använda round () om och om igen inuti work format-number (), men ut gav de mest extrema resultaten.
Vi använder redan XSLT 1.0. Att flytta till XSLT 2.0 verkar vara en skrämmande uppgift. Lösningen kostar mycket, men jag kan se att jag arbetar med cappuccinofunktionen och ringer den från XSL för att slutföra den.
frågade 23 okt 15 går in 4:57
Inte svaret du letar efter? Granska alla andra frågor markerade med Xml Xslt Xslt-1.0 avrundning och ställ din egen fråga.
Funktionen round ()
avrundar a med vår förståelse av tal till närmaste heltal, och den betydande användningen av round ()
kanske inte riktigt avrundar vårt eget tal korrekt . format-number ()
formaterar data med urval, som trunkerar, skulle jag säga, data (förmodligen), vilket kan leda till värdeförlust.
Att använda varje typ av angrepp ()
och format-nummer ()
bör fungera effektivt.
5.225
* Välj betyder "format-nummer (rund (100
svarade 15 okt Jag är inne 05:40.
5.297
Det mest överraskande att förstå är att när en person skriver ett tal till exempel 131 855, är det mätbara värdet det representerar inte anmärkningsvärt mellan 131,85 och 131,86. Det kommer förmodligen inte automatiskt att finnas ett flyttalstal med dubbel precision som anses numeriskt vara 131 855, så det verkliga värdet för de flesta personen du kontrollerar kommer att vara lägre och något högre. Denna felaktighet uppstår omedelbart efter att du kan skriva ner numret, inte bara när du har litat på det. Om din organisation multiplicerar enheten med 100 kommer den skillnaden att öka, och om du använder round (), kommer den att hoppa för att tillåta dem till närmaste heltal, vilket ibland beror på att det spelar ingen roll om approximationen ökar eller minskar. Eftersom XSLT 1.0 bara innehåller flyttal, fanns det ingen lösning för den här typen av problem.
Godkänd: Fortect
Fortect är världens mest populära och effektiva PC-reparationsverktyg. Det litar på miljontals människor för att hålla sina system igång snabbt, smidigt och felfritt. Med sitt enkla användargränssnitt och kraftfulla skanningsmotor hittar och fixar Fortect snabbt ett brett utbud av Windows-problem – från systeminstabilitet och säkerhetsproblem till minneshantering och prestandaflaskhalsar.
Tio kan användas i XSLT 2.0-nummer i vardagen. mer än folk räknar.
svarade 15 okt var 8:23.
141k
Snabba upp din dators prestanda nu med denna enkla nedladdning.