Standart sayısal biçim dizeleri
Standart sayısal biçim dizeleri, genel sayısal türleri biçimlendirmek için kullanılır. Standart sayısal biçim dizesi biçimindedir [format specifier][precision specifier]
ve burada:
Biçim belirtici , para birimi veya yüzde gibi sayı biçimi türünü belirten tek bir alfabetik karakterdir. Beyaz boşluk da dahil olmak üzere birden fazla alfabetik karakter içeren herhangi bir sayısal biçim dizesi, özel bir sayısal biçim dizesi olarak yorumlanır. Daha fazla bilgi için Özel sayısal biçim dizeleri'ne gidin.
Duyarlık belirtici , sonuçta elde edilen dizedeki basamak sayısını etkileyen isteğe bağlı bir tamsayıdır. Duyarlık belirtici, bir sayının dize gösterimindeki basamak sayısını denetler.
Duyarlık belirtici sonuç dizesindeki kesirli basamak sayısını denetlediğinde, sonuç dizesi sonsuz kesin sonuca en yakın temsil edilebilir sonuca yuvarlanan bir sayıyı yansıtır.
Not
Duyarlık belirtici, sonuç dizesindeki basamak sayısını belirler. Bir sonuç dizesini baştaki veya sondaki boşluklarla veya diğer karakterlerle (0 gibi) doldurmak için Text.PadStart ve Text.PadEnd işlevlerini kullanın ve sonuç dizesini doldurması için bu işlevlerdeki genel uzunluk
count
kullanın.
Standart sayısal biçim dizeleri Number.ToText işlevi tarafından desteklenir.
Standart biçim tanımlayıcıları
Aşağıdaki tabloda standart sayısal biçim tanımlayıcıları açıklanır ve her biçim tanımlayıcısı tarafından üretilen örnek çıktı görüntülenir. Standart sayısal biçim dizelerini kullanma hakkında ek bilgi için Notlar bölümüne ve bunların kullanımına ilişkin kapsamlı bir çizim için Kod örneği bölümüne gidin.
Not
Belirli bir kültür için biçimlendirilmiş dizenin sonucu aşağıdaki örneklerden farklı olabilir. Kullandığınız sistemdeki işletim sistemi ayarları, kullanıcı ayarları, ortam değişkenleri ve diğer ayarların tümü biçimi etkileyebilir.
Biçim belirteci | Veri Akışı Adı | Açıklama | Örnekler |
---|---|---|---|
"C" ya da "c" | Para birimi | Sonuç: Bir para birimi değeri. Destekleyen: Tüm sayısal türler. Duyarlık belirtici: Ondalık basamak sayısı. Varsayılan duyarlık tanımlayıcısı: Kültür tarafından tanımlanır. Daha fazla bilgi: Para Birimi ("C") Biçim Tanımlayıcısı. |
123.456 ("C", en-US) -> \$123.46 123.456 ("C", fr-FR) -> 123,46 € 123.456 ("C", ja-JP) -> ¥123 -123.456 ("C3", en-US) -> (\$123,456) -123.456 ("C3", fr-FR) -> -123,456 € -123.456 ("C3", ja-JP) -> -¥123.456 |
"D" veya "d" | Ondalık | Sonuç: İsteğe bağlı eksi işaretli tamsayı basamaklar. Desteklenen: sadece integral türleri. Duyarlık belirtici: Minimum basamak sayısı. Varsayılan duyarlık belirtici: En az gereken basamak sayısı. Daha fazla bilgi: Decimal("D") Biçim Tanımlayıcısı. |
1234 ("D") -> 1234 -1234 ("D6") -> -001234 |
"E" ya da "e" | Üstsel (bilimsel) | Sonuç: Üstel simgeleme. Destekleyen: Tüm sayısal türler. Duyarlık belirtici: Ondalık basamak sayısı. Varsayılan duyarlık belirtici: 6. Daha fazla bilgi: Üstel ("E") Biçim Tanımlayıcısı. |
1052.0329112756 ("E", en-US) -> 1.052033E+003 1052.0329112756 ("e", fr-FR) -> 1,052033e+003 -1052.0329112756 ("e2", en-US) -> -1,05e+003 -1052.0329112756 ("E2", fr-FR) -> -1,05E+003 |
"F" ya da "f" | Sabit nokta | Sonuç: İsteğe bağlı eksi işaretli tamsayı ve ondalık basamaklar. Destekleyen: Tüm sayısal türler. Duyarlık belirtici: Ondalık basamak sayısı. Varsayılan duyarlık tanımlayıcısı: Kültür tarafından tanımlanır. Daha fazla bilgi: Sabit Nokta ("F") Biçim Tanımlayıcısı. |
1234.567 ("F", en-US) -> 1234,57 1234.567 ("F", de-DE) -> 1234,57 1234 ("F1", en-US) -> 1234.0 1234 ("F1", de-DE) -> 1234,0 -1234.56 ("F4", en-US) -> -1234.5600 -1234.56 ("F4", de-DE) -> -1234.5600 |
"G" ya da "g" | Genel | Sonuç: Sabit noktalı veya bilimsel gösterimin daha kompaktı. Destekleyen: Tüm sayısal türler. Duyarlık belirtici: Anlamlı basamak sayısı. Varsayılan duyarlık belirtici: Sayısal türe bağlıdır. Daha fazla bilgi: Genel ("G") Biçim Tanımlayıcısı. |
-123.456 ("G", en-US) -> -123.456 -123.456 ("G", sv-SE) -> -123.456 123.4546 ("G4", en-US) -> 123.5 123.4546 ("G4", sv-SE) -> 123,5 -1.234567890e-25 ("G", en-US) -> -1.23456789E-25 -1.234567890e-25 ("G", sv-SE) -> -1,23456789E-25 |
"N" ya da "n" | Sayı | Sonuç: Integral ve ondalık basamaklar, grup ayırıcılar ve isteğe bağlı eksi işaretli ondalık ayırıcı. Destekleyen: Tüm sayısal türler. Duyarlık belirtici: İstenen ondalık basamak sayısı. Varsayılan duyarlık tanımlayıcısı: Kültür tarafından tanımlanır. Daha fazla bilgi: Sayısal ("N") Biçim Tanımlayıcısı. |
1234.567 ("N", en-US) -> 1.234,57 1234.567 ("N", ru-RU) -> 1 234,57 1234 ("N1", en-US) -> 1.234.0 1234 ("N1", ru-RU) -> 1 234,0 -1234.56 ("N3", en-US) -> -1.234.560 -1234,56 ("N3", ru-RU) -> -1 234.560 |
"P" ya da "p" | Yüzde | Sonuç: Sayı 100 ile çarpılır ve yüzde simgesi ile görüntülenir. Destekleyen: Tüm sayısal türler. Duyarlık belirtici: İstenen ondalık basamak sayısı. Varsayılan duyarlık tanımlayıcısı: Kültür tarafından tanımlanır. Daha fazla bilgi: Yüzde ("P") Biçim Tanımlayıcısı. |
1 ("P", en-US) -> %100,00 1 ("P", fr-FR) -> %100,00 -0,39678 ("P1", en-US) -> -39,7 % -0,39678 ("P1", fr-FR) -> -39,7 % |
"X" ya da "x" | Onaltılık | Sonuç: Bir onaltılık dize. Desteklenen: sadece integral türleri. Duyarlık belirtici: Sonuç dizesindeki basamak sayısı. Daha fazla bilgi: Onaltılık ("X") Biçim Tanımlayıcısı. |
255 ("X") -> FF -1 ("x") -> ff 255 ("x4") -> 00ff -1 ("X4") -> 00FF |
Başka bir tek karakter | Bilinmeyen tanımlayıcı | Sonuç: Çalışma zamanında bir İfade hatası oluşturur. |
Standart sayısal biçim dizelerini kullanma
Standart sayısal biçim dizesi, sayısal bir değerin biçimlendirmesini tanımlamak için kullanılabilir.
Number.ToText
format
parametresine geçirilebilir. Aşağıdaki örnek, sayısal bir değeri geçerli kültürde (bu örnekte en-US kültürü) para birimi dizesi olarak biçimlendirmektedir.
Number.ToText(123.456, "C2")
// Displays $123.46
İsteğe bağlı olarak, sayısal alanın genişliğini ve değerinin sağa mı yoksa sola hizalı mı olduğunu belirtmek için Text.PadStart ve Text.PadEnd işlevlerinde bir count
bağımsız değişkeni sağlayabilirsiniz. Örneğin, aşağıdaki örnek 28 karakterlik bir alandaki para birimi değerini sola hizalar ve 14 karakterlik bir alanda (tek aralıklı yazı tipi kullanılırken) para birimi değerini sağa hizalar.
let
amounts = {16305.32, 18794.16},
result = Text.Format(" Beginning Balance Ending Balance#(cr,lf) #{0}#{1}",
{
Text.PadEnd(Number.ToText(amounts{0}, "C2"), 28),
Text.PadStart(Number.ToText(amounts{1}, "C2"), 14)
})
in
result
// Displays:
// Beginning Balance Ending Balance
// $16,305.32 $18,794.16
Aşağıdaki bölümlerde her standart sayısal biçim dizesi hakkında ayrıntılı bilgi sağlanmaktadır.
Para birimi biçim belirticisi (C)
"C" (ya da para birimi) biçim belirticisi, bir sayıyı para birimi tutarını gösteren bir dizeye dönüştürür. Duyarlık belirtici, sonuç dizesindeki istenen ondalık basamak sayısını gösterir. Duyarlık belirtici atlanırsa, para birimi değerlerinde kullanılacak varsayılan ondalık basamak sayısı 2'dir.
Biçimlendirilecek değer, belirtilen veya varsayılan ondalık basamak sayısından fazlasına sahipse, sonuç dizesinde kesirli değer yuvarlanır. Belirtilen ondalık basamak sayısının sağındaki değer 5 veya daha büyükse, sonuç dizesindeki son basamak, sıfırdan uzağa yuvarlanır.
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenir.
Aşağıdaki örnek, bir değeri para birimi biçim belirticisiyle biçimlendirdi:
let
Source =
{
Number.ToText(12345.6789, "C"),
Number.ToText(12345.6789, "C3"),
Number.ToText(12345.6789, "C3", "da-DK")
}
in
Source
// The example displays the following list on a system whose
// current culture is English (United States):
// $12,345.68
// $12,345.679
// 12.345,679 kr.
Ondalık biçim belirticisi (D)
"D" (veya ondalık) biçim belirticisi, sayıyı, sayı negatifse eksi işaretiyle önekli bir ondalık basamaklı (0-9) bir dizeye dönüştürür. Bu biçim yalnızca tam sayı türleri için desteklenir.
Duyarlık belirtici, sonuç dizesindeki istenen minimum basamak sayısını gösterir. Gerekirse, duyarlık belirtici tarafından verilen basamak sayısını üretmek için sayının sol tarafı sıfırlarla doldurulur Bir duyarlık belirtici belirtilmezse varsayılan, başta sıfır bulunmadan tamsayıyı temsil etmek için gerekli minimum değerdir.
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenir.
Aşağıdaki örnek, bir değeri ondalık biçim tanımlayıcısıyla biçimlendirdi.
let
Source =
{
Number.ToText(12345, "D"),
// Displays 12345
Number.ToText(12345, "D8"),
// Displays 00012345
Number.ToText(-12345, "D"),
// Displays -12345
Number.ToText(-12345, "D8")
// Displays -00012345
}
in
Source
Üstel biçim tanımlayıcısı (E)
Üstel ("E") biçim belirteci bir sayıyı "-d.ddd...E + ggg" veya "-d.ddd...e+ddd" biçiminde bir dizeye dönüştürür; burada her "d" bir basamağı (0-9) gösterir. Sayı negatifse, dize eksi işaretiyle başlar. Ondalık işaretinden önce her zaman tam bir basamak gelir.
Duyarlık belirtici, ondalık noktasından sonraki istenen basamak sayısını gösterir. Duyarlık belirtici atlanırsa, ondalık işaretinden sonra varsayılan olarak altı basamak kullanılır.
Biçim belirticisinin durumu üsse "E" veya "e" önekinin getirilip getirilmeyeceğini gösterir. Üs her zaman bir artı veya eksi işareti ile en az üç basamaktan oluşur. Üs bu minimum şartı karşılamak için gerekirse sıfırlarla doldurulur.
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenir.
Aşağıdaki örnek bir değeri üstel biçim tanımlayıcısıyla biçimlendirdi:
let
Source =
{
Number.ToText(12345.6789, "E", ""),
// Displays 1.234568E+004
Number.ToText(12345.6789, "E10", ""),
// Displays 1.2345678900E+004
Number.ToText(12345.6789, "e4", ""),
// 1.2346e+004
Number.ToText(12345.6789, "E", "fr-FR")
// Displays 1,234568E+004
}
in
Source
Not
Önceki örnekteki Number.ToText son parametresindeki boş metin değeri ("") sabit kültüre başvurur.
Sabit nokta biçim tanımlayıcısı (F)
Sabit nokta ("F") biçim tanımlayıcısı bir sayıyı "-ddd.ddd..." biçimindeki bir dizeye dönüştürür burada her "d" bir basamak (0-9) gösterir. Sayı negatifse, dize eksi işaretiyle başlar.
Duyarlık belirtici, istenen ondalık basamak sayısını gösterir. Duyarlık belirtici atlanırsa, sayısal değerlerde kullanılacak varsayılan ondalık basamak sayısı 2'dir.
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenir.
Aşağıdaki örnek, sabit nokta biçim tanımlayıcısıyla bir çift ve bir tamsayı değeri biçimlendirdi:
let
Source =
{
Number.ToText(17843, "F", ""),
// Displays 17843.00
Number.ToText(-29541, "F3", ""),
// Displays -29541.000
Number.ToText(18934.1879, "F", ""),
// Displays 18934.19
Number.ToText(18934.1879, "F0", ""),
// Displays 18934
Number.ToText(-1898300.1987, "F1", ""),
// Displays -1898300.2
Number.ToText(-1898300.1987, "F3", "es-ES")
// Displays -1898300,199
}
in
Source
Genel biçim tanımlayıcısı (G)
Genel ("G") biçim belirticisi, sayıyı, sayının türüne ve bir duyarlık belirticinin mevcut olup olmadığına bağlı olarak sabit noktalı veya bilimsel gösterimden daha küçük bir sayıya dönüştürür. Duyarlık belirtici, sonuç dizesindeki görünebilir maksimum anlamlı basamak sayısını tanımlar. Duyarlık belirtici atlanırsa veya sıfır olursa, sayının türü, aşağıdaki tabloda gösterildiği gibi varsayılan duyarlığı belirler.
Sayısal tür | Varsayılan duyarlık |
---|---|
Byte.Type veya Int8.Type |
3 basamak |
Int16.Type |
5 basamak |
Int32.Type |
10 basamak |
Int64.Type |
19 basamak |
Single.Type |
9 basamak |
Double.Type |
17 basamak |
Decimal.Type |
15 basamak |
Sayı bilimsel gösterimde ifade edildiğinde elde edilen üs -5'ten büyükse ve duyarlık belirticiden küçükse sabit noktalı gösterim kullanılır; aksi takdirde bilimsel gösterim kullanılır. Sonuç gerekirse bir ondalık noktası içerir ve ondalık noktadan sonra gelen sıfırlar atlanır. Duyarlık belirtici varsa ve sonuçtaki anlamlı basamak sayısı, belirtilen duyarlığı aşarsa, sondaki fazlalık basamaklar yuvarlama tarafından kaldırılır.
Ancak, sayı bir Decimal.Type
ise ve duyarlık belirtici atlanırsa, sabit nokta gösterimi her zaman kullanılır ve sondaki sıfırlar korunur.
Bilimsel gösterim kullanılırsa, biçim belirtici "G" olduğunda sonuçtaki üssün başına "E", biçim belirtici "g" olduğunda "e" eklenir. Üs, en az iki basamak içerir. Bu, üs değerinde en az üç basamak içeren üssel biçim belirleyici tarafından üretilen bilimsel gösterim biçiminden farklıdır.
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenir.
Aşağıdaki örnek, çeşitli kayan nokta değerlerini genel biçim tanımlayıcısıyla biçimlendirmektedir:
let
Source =
{
Number.ToText(12345.6789, "G", ""),
// Displays 12345.6789
Number.ToText(12345.6789, "G", "fr-FR"),
// Displays 12345,6789
Number.ToText(12345.6789, "G7", ""),
// Displays 12345.68
Number.ToText(.0000023, "G", ""),
// Displays 2.3E-06
Number.ToText(.0000023, "G", "fr-FR"),
// Displays 2,3E-06
Number.ToText(.0023, "G", ""),
// Displays 0.0023
Number.ToText(1234, "G2", ""),
// Displays 1.2E+03
Number.ToText(Number.PI, "G5", "")
// Displays 3.1416
}
in
Source
Sayısal biçim tanımlayıcısı (N)
Sayısal ("N") biçim belirteci bir sayıyı "-d,ddd,ddd.ddd…" biçiminde bir dizeye dönüştürür; burada "-" gerekirse negatif bir sayı simgesini, "d" bir basamağı (0-9) gösterir, "," bir grup ayırıcıyı gösterir ve "." bir ondalık simgesini gösterir. Duyarlık belirtici, ondalık noktasından sonraki istenen basamak sayısını gösterir. Duyarlık belirtici atlanırsa, ondalık basamak sayısı geçerli kültür tarafından tanımlanır.
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenir.
Aşağıdaki örnek, çeşitli kayan nokta değerlerini sayı biçimi tanımlayıcısıyla biçimlendirmektedir:
let
Source =
{
Number.ToText(-12445.6789, "N", ""),
// Displays -12,445.68
Number.ToText(-12445.6789, "N1", "sv-SE"),
// Displays -12 445,7
Number.ToText(123456789, "N1", "")
// Displays 123,456,789.0
}
in
Source
Yüzde biçimi tanımlayıcısı (P)
Yüzde ("P") biçim belirticisi sayıyı 100 ile çarpar ve yüzde temsil eden bir dizeye dönüştürür. Duyarlık belirtici, istenen ondalık basamak sayısını gösterir. Duyarlık belirtici atlanırsa, geçerli kültür tarafından sağlanan varsayılan sayısal duyarlık kullanılır.
Aşağıdaki örnek kayan nokta değerlerini yüzde biçimi tanımlayıcısıyla biçimlendirmektedir:
let
Source =
{
Number.ToText(.2468013, "P", ""),
// Displays 24.68 %
Number.ToText(.2468013, "P", "hr-HR"),
// Displays 24,68 %
Number.ToText(.2468013, "P1", "en-US")
// Displays 24.7%
}
in
Source
Onaltılık biçim tanımlayıcısı (X)
("X") onaltılı biçim belirticisi bir sayıyı onaltı basamaklı bir dizeye dönüştürür. Biçim belirticisinin durumu, 9'dan büyük onaltılık basamak için büyük veya küçük harf kullanılıp kullanılmayacağını belirtir. Örneğin, "ABCDEF" üretmek için "X" ve "abcdef" üretmek için "x" kullanın. Bu biçim yalnızca tam sayı türleri için desteklenir.
Duyarlık belirtici, sonuç dizesindeki istenen minimum basamak sayısını gösterir. Gerekirse, duyarlık belirtici tarafından verilen basamak sayısını üretmek için sayının sol tarafı sıfırlarla doldurulur
Sonuç dizesi geçerli kültürün biçimlendirme bilgilerinden etkilenmez.
Aşağıdaki örnek, değerleri onaltılık biçim tanımlayıcısıyla biçimlendirir.
let
Source =
{
Number.ToText(0x2045e, "x"),
// Displays 2045e
Number.ToText(0x2045e, "X"),
// Displays 2045E
Number.ToText(0x2045e, "X8"),
// Displays 0002045E
Number.ToText(123456789, "X"),
// Displays 75BCD15
Number.ToText(123456789, "X2")
// Displays 75BCD15
}
in
Source
Notlar
Bu bölüm, standart sayısal biçim dizelerini kullanma hakkında ek bilgiler içerir.
İntegral ve kayan nokta sayısal türleri
Bazı standart sayısal biçim belirticilerinin açıklamaları, ayrılmaz veya kayan nokta sayısal türlere başvurur. Tam sayı türleri , , , ve'dirByte.Type
Int8.Type
. Int16.Type
Int32.Type
Int64.Type
Kayan nokta sayısal türleri , Decimal.Type
ve Single.Type
şeklindedirDouble.Type
.
Kayan nokta sonsuzlukları ve NaN
Biçim dizesinden bağımsız olarak, Decimal.Type
, Single.Type
veya Double.Type
kayan nokta türünün değeri pozitif sonsuz, negatif sonsuz veya sayı (NaN) değilse, biçimlendirilmiş dize ilgili Number.PositiveInfinity, Number.NegativeInfinityveya geçerli kültür tarafından belirtilen Number.NaN sabitlerinin değeridir.
Kod örneği
Aşağıdaki örnek, en-US kültürünü ve tüm standart sayısal biçim tanımlayıcılarını kullanarak kayan noktayı ve tam sayı sayısal değerini biçimlendirer. Bu örnek iki belirli sayısal türü (Double.Type
ve Int32.Type
) kullanır, ancak diğer sayısal temel türlerden herhangi biri için (Byte.Type
, Decimal.Type
, Int8.Type
, Int16.Type
, Int64.Type
ve Single.Type
) benzer sonuçlar verir.
let
// Display text representations of numbers for en-US culture
culture = "en-US",
// Output floating point values
floating = Double.From(10761.937554),
#"Floating results" =
{
Text.Format("C: #{0}", {Number.ToText(floating, "C", culture)}), // Displays "C: $10,761.94"
Text.Format("E: #{0}", {Number.ToText(floating, "E03", culture)}), // Displays "E: 1.076E+004"
Text.Format("F: #{0}", {Number.ToText(floating, "F04", culture)}), // Displays "F: 10761.9376"
Text.Format("G: #{0}", {Number.ToText(floating, "G", culture)}), // Displays "G: 10761.937554"
Text.Format("N: #{0}", {Number.ToText(floating, "N03", culture)}), // Displays "N: 10,761.938"
Text.Format("P: #{0}", {Number.ToText(floating/10000, "P02", culture)}) // Displays "P: 107.62%"
},
// Output integral values
integral = Int32.From(8395),
#"Integral results" =
{
Text.Format("C: #{0}", {Number.ToText(integral, "C", culture)}), // Displays "C: $8,395.00"
Text.Format("D: #{0}", {Number.ToText(integral, "D6", culture)}), // Displays "D: 008395"
Text.Format("E: #{0}", {Number.ToText(integral, "E03", culture)}), // Displays "E: 8.395E+003"
Text.Format("F: #{0}", {Number.ToText(integral, "F01", culture)}), // Displays "F: 8395.0"
Text.Format("G: #{0}", {Number.ToText(integral, "G", culture)}), // Displays "G: 8395"
Text.Format("N: #{0}", {Number.ToText(integral, "N01", culture)}), // Displays "N: 8,395.0"
Text.Format("P: #{0}", {Number.ToText(integral/10000, "P02", culture)}), // Displays "P: 83.95%"
Text.Format("X: 0x#{0}", {Number.ToText(integral, "X", culture)}) // Displays "X: 0x20CB"
},
results = #"Floating results" & #"Integral results"
in
results