Moin,
ich habe gerade folgendes in C# 2017 festgestellt. In der ofiziellen Doku im Web zu system.split ist das nicht erwähnt.
Ich habe folgendes Szenario:
Ein String wird als Zeile aus einer CSV Datei eingelesen.
Da steht dann etwa "123456;test;1,90;4,90;sonstnochirgendwas" drin.
Ich splitte das mit string.split(';') in ein Array, also etwa
string[] szeile = zeile.split(';');
Dann liefert mir das:
szeile[0] = "123456"
szeile[1] = "test"
szeile[2] = "1,9"
szeile[3] = "4,9"
szeile[4] = "sobstnochirgendwas"
D,h, String.split enfernt offensichtlich eigenmächtich aus Zahlen abschliessende 0er. Mathematisch hat das auf die Zahl natürlich keine Auswirkung.
In meinem Fall aber schon da die korrektheit der Zahl für das AUsgeformat eminent wichtig ist! Hier führen die entfernten Nullen zu verfälschungen. Ebenso würden auch Nummern dementsprechend verfälscht weil einfach hinten die 0 weggeschnitten wird.
Das ist ein für mich sehr sehr unschönes Verhalten dieser Funktion. Es sollte zumindest eine Option geben das abzuschalten. Leider ist aber offiziell nicht mal dieses "Feature" selbst dokumentiert :(