int[] x = y.split(' '); <-- brauche das :D

sra

Erfahrenes Mitglied
Hallo

Ich habe einen String, in dem sind ein paar Zahlen durch ein Leerzeichen getrennt, die ich danach in einem int Array haben will.

Ich splitte also den String, erhalte dann aber logischerweise einen String Array zurück.

Nun die Frage, wie wandle ich einen Array vom Typ String in Int um?

Bei mir ging es weder mit der Convert Methode, noch mit casting.

Danke für eure Antworten
 
arrayname[0].ToString();

? Denke mal so sollte das gehen...Wie du das Ganze Array auf einmal umwandeln kannst kann ich dir leider auch nicht sagen...
 
ich hab es jetzt so gemacht, dass immer wenn ich eine variable aus dem string brauche, dass ich dann konvertiere.

Würde mich aber trotzdem intressieren, wie man einen ganzen Array ändert.
 
Hi,
eine Convert-Methode, welche ein ganzes Array ändert ist mir auch nicht bekannt.

Code:
string mystring = "1 2 3 4 5 6 7";
string[] splitted = mystring.Split(' ');
int[] intArray = new int[splitted.Length];

for (int i = 0; i < splitted.Length; i++)
{
	intArray[i] = Convert.ToInt32(splitted[i]);
}

Mfg,
Alex
 
Hey,

also das zerlegen und selbst untersuchen des String mit SPLIT usw. ist nicht optimal. Schau doch mal nach regulären Ausdrücken (regular expression). Das .net Framework bietet eigens dafür ausreichend Methoden an.
Das geht wirklich easy und ist meist auch performanter, als wenn man es selbst macht.

Chris
 
Die automatische Konvertierung wird lt. MSDN auch nicht unterstützt. Diese Exception wird ausgelöst, wenn man dennoch versucht. In der Erklärung steht, dass bei Strings dies nicht funktioniert.
ArrayTypeMismatchException wird ausgelöst, wenn das System das Element nicht in den für das Array deklarierten Typ konvertieren kann. Ein Element vom Typ String kann beispielsweise nicht in einem Int32-Array gespeichert werden, da eine Konvertierung zwischen diesen Typen nicht unterstützt wird. Es ist i. d. R. nicht erforderlich, dass eine Anwendung diese Ausnahme auslöst.

... d.h. von Hand programmieren. ;)
 

Neue Beiträge

Zurück