Numeriskt format

När en text analyseras som en numerisk datatyp eller när en numerisk datatyp ska formateras till en text måste formatmönstret anges.

Den lokala inställningen för tolkning och formatering är känslig.

I CloudConnect används Javas decimalformat.

Tabell 28.8. Mönster för numeriskt format Syntax

Symbol Lokalisering Lokaliserad? Betydelse
# Nummer Ja Ciffer, noll visas som frånvarande
0 Nummer Ja Tal Ciffer
. Tal Ja Decimalseparator eller monetär decimalseparator
Tal Ja Minus tecken
, Tal Ja Grupperingsseparator
E Tal Ja Separerar mantissa och exponent i vetenskaplig notation. Behöver inte anges i prefix eller suffix.
; Undermönstergräns Ja Separerar positiva och negativa undermönster
% Prefix eller suffix Ja Multiplicera med 100 och visa som procentandel
‰ (\u2030) Förled eller efterled Ja Multiplicera med 1000 och visa som promillevärde
¤ (\u00A4) Förled eller efterled Nej Valuta tecken, ersätts av en valutasymbol. Om dubbelt, ersätts med internationell valutasymbol. Om det finns i ett mönster används den monetära decimalseparatorn i stället för decimalseparatorn.
Prefix eller suffix Nej Används för att citera specialtecken i ett prefix eller suffix, till exempel ”’#’#’#” formaterar 123 till ”#123”. Om du vill skapa ett enkelt citationstecken i sig själv använder du två i rad: ”

  • Både prefix och suffix är Unicode-tecken från \u0000 till \uFFFD, inklusive marginaler, men exklusive specialtecken.

Formatmönster består av undermönster, prefix, suffix etc. på det sätt som visas i följande tabell:

Förklaring av dessa symboler följer:

Tabell 28.10. Använda beteckningar

Notation Beskrivning
X* 0 eller fler exempel på X
(X | Y) Endera X eller Y
X..Y alla tecken från X till och med Y, inklusive
S – T tecken i S, utom de i T
{X} X är valfritt

Håll dig också i minnet att formateringen är lokalt känslig. Se följande tabell där resultaten är olika för olika språkversioner:

Tabell 28.11. Lokalkänslig formatering

Mönster Lokal Resultat
####,####.#### en.US 123,456.789
######,####.#### de.DE 123.456,789
####,####.#### fr.FR 123 456,789

Note

För en djupare inblick i hanteringen av siffror, se den officiella Java-dokumentationen.

Vetenskaplig notation

Tal i vetenskaplig notation uttrycks som produkten av en mantissa och en tiopotens.

Till exempel kan 1234 uttryckas som 1.234 x 103.

Mantissan är ofta i intervallet 1.0 <= x < 10.0, men behöver inte vara det.

Numeriska datatyper kan instrueras att formatera och analysera vetenskaplig notation endast via ett mönster. I ett mönster anger exponenttecknet omedelbart följt av ett eller flera siffertecken vetenskaplig notation.

Exempel: Exempel: ”0.####E0” formaterar talet 1234 som ”1.234E3”.

Exempel på numeriskt mönster och resultat följer:

Legend:

1): Maximalt antal heltalsiffror är 3, minimalt antal heltalsiffror är 1, maximalt antal är större än minimalt antal, vilket innebär att exponenten kommer att vara en multiplikation av tre (maximalt antal heltalsiffror) i vart och ett av fallen.

2): Det maximala antalet heltalssiffror är 2, det minimala antalet heltalssiffror är 1, det maximala är större än det minimala, vilket innebär att exponenten kommer att vara en multiplikation av två (maximalt antal heltalssiffror) i vart och ett av fallen.

3): Det maximala antalet heltalssiffror är 2, det minimala antalet heltalssiffror är 2, det maximala är lika med det minimala, det minimala antalet heltalssiffror kommer att uppnås genom att justera exponenten.

4): I varje fall är det maximala antalet heltalssiffror lika med det minimala, det minimala antalet heltalssiffror kommer att uppnås genom att justera exponenten: Maximalt antal heltalssiffror är 3, maximalt antal bråksiffror är 2, antalet signifikanta siffror är summan av maximalt antal heltalssiffror och maximalt antal bråksiffror, således är antalet signifikanta siffror som visas (5 siffror).

Binära format

Tabellen nedan visar en lista över tillgängliga format:

Tabell 28.13. Tillgängliga binära format

Typ Namn Format Längd
integer BIG_ENDIAN Tvåtalskomplement, big-endian variabel
LITTLE_ENDIAN tvåkomplement, little-endian
PACKED_DECIMAL packeddecimal
floating-point DOUBLE_BIG_ENDIAN IEEE 754, big-endian 8 bytes
DOUBLE_LITTLE_ENDIAN IEEE 754, little-endian
FLOAT_BIG_ENDIAN IEEE 754, big-endian 4 bytes
FLOAT_LITTLE_ENDIAN IEEE 754, little-endian

Flottpunktsformaten kan användas mednumeric och decimal datatyper.Heltalsformaten kan användas med datatyperna integer ochlong. Undantaget från regeln är datatypendecimal, som också stöder heltalsformat (BIG_ENDIAN,LITTLE_ENDIAN ochPACKED_DECIMAL). När ett heltalsformat används med datatypen decimal sätts implicit decimalpoäng i enlighet med attributet Scale. Om det lagrade värdet till exempel är 123456789 ochScale är inställt på 3 kommer fältets värde att vara123456.789.

Om du vill använda ett binärt format skapar du ett metadatafält med en av de datatyper som stöds och ställer in attributet Format till namnet på formatet med "BINARY:" som ingångsbeteckning, t.ex. Om du vill använda formatet PACKED_DECIMAL skapar du ett adecimalt fält och ställer in Format till"BINARY:PACKED_DECIMAL" genom att välja det från listan över tillgängliga format.

För format med fast längd (double och float) måste även attributetSize ställas in i enlighet med detta.

För närvarande kan binära dataformat endast hanteras av ComplexDataReader och den föråldrade FixLenDataReader.

Lämna ett svar

Din e-postadress kommer inte publiceras.