DinoMedlem sedan sep. 20011 914 inlägg Har i koden nedan en array "str" som skall få sina värden i en while loop, problemet är bara att jag inte vet hur många element array kommer att innehålla. Den vill att jag skall skriva "new string[antal_element]", men det kan jag ju inte då. Och om man bara skriver "string[] str;", men då kommer felet "Use of unassigned local variable 'str'". Fattar varför det blir så, men hur löser jag mitt problem? Så kan någon ge mig den enkla lösningen. :)
string[] str = new string[];
int i = 0;
SqlDataReader dr = ...;
while(dr.Read())
{
str[i] = dr.GetString(1).Substring(0,1);
i++;
}
renholmMedlem sedan apr. 20012 266 inlägg Du kan använda en ArrayList på följande sätt.
ArrayList array = new ArrayList();
while()
{
array.Add(str);
}
string[] stringarray = (string[])array.ToArray(typeof(string));
Vet dock inte om detta är något bra sätt.
DinoMedlem sedan sep. 20011 914 inlägg Verkar lite overkill. Måste väl finnas något mer basic. Men jag får väl nöja mig med det tillsvidare. Tack. :)
SPiNMedlem sedan mars 20007 896 inlägg För att dynamiskt kunna stoppa in och ut objekt ur en lista, bör du som renholm säger med fördel använda dig av t.ex. en ArrayList. Du kan hantera och manipulera dina strängar lika bra som om det vore en array, så renholms konvertering till en array skulle jag undvika om det inte är absolut nödvändigt. :)
SPiNMedlem sedan mars 20007 896 inlägg Nej, det finns inget mer basic när man inte kan använda pekare till arrayer - en array måste deklareras statiskt med antal element. :)
DinoMedlem sedan sep. 20011 914 inlägg Ok, antar att jag kan retunera en ArrayList istället. Tack för svaren. :)