Avatar billede beef12 Nybegynder
10. december 2004 - 14:57 Der er 12 kommentarer og
1 løsning

IndexOf virker ikke

int i = calcvalWithIIF.IndexOf(",",1, calcvalWithIIF.Length);

hvorfor virker ovenstående ikke...

Får denne fejl:

Unhandled Exception: System.ArgumentOutOfRangeException: Index was out of range.
Must be non-negative and less than the size of the collection.
Avatar billede arne_v Ekspert
10. december 2004 - 15:00 #1
Lyder som "," ikke findes og at i derfor bliver -1 og at du bruger i
som index ...
Avatar billede wisen Nybegynder
10. december 2004 - 15:01 #2
prøv med calcvalWithIIF.IndexOf(",", 0, calcvalWithIIF.Length - 1) istedet
Avatar billede aaberg Nybegynder
10. december 2004 - 15:01 #3
Prøv:

int i = calcvalWithIIF.IndexOf(",");
Avatar billede beef12 Nybegynder
10. december 2004 - 15:02 #4
ups... den virker fint...
det er denne der ikke virker

int j = calcvalWithIIF.LastIndexOf(",",0, calcvalWithIIF.Length);
Avatar billede beef12 Nybegynder
10. december 2004 - 15:03 #5
nej - jeg ved den eksisterer i min streng...
Avatar billede ladyhawke Novice
10. december 2004 - 15:04 #6
generelt set er det en dårlig ide at anvende en værdi uden at kontrollere den først, f.eks. i dette tilfælde uden at tjekke om værdien ligger mellem 0 og length-1. I andre tilfælde kan det være at kontrollere at det man får rent faktisk er et tal (når brugeren skal indtaste tal i en textbox e.l. og man skal bruge værdierne til at regne på.
Avatar billede beef12 Nybegynder
10. december 2004 - 15:06 #7
brugte så bare int i = calcvalWithIIF.IndexOf(","); som der blev forestået, så virker det... meget mærkeligt... det burde da godt ku tage de argumenter
Avatar billede arne_v Ekspert
10. december 2004 - 15:08 #8
int i = calcvalWithIIF.IndexOf(",",1, calcvalWithIIF.Length);

kan formentligt fejle hvis calcvalWithIIF.Length er 0
Avatar billede philip1804 Nybegynder
10. december 2004 - 15:11 #9
Prøv med:
int i = calcvalWithIIF.IndexOf(",");

Så bliver du glad!
Avatar billede wisen Nybegynder
10. december 2004 - 15:16 #10
philip1804 > kun 10 min. for sent ;)
Avatar billede beef12 Nybegynder
10. december 2004 - 15:23 #11
nå - aaberg, jeg stikker dig pointene :-)

smid et svar
Avatar billede arne_v Ekspert
10. december 2004 - 15:24 #12
Nu har jeg lige checket docs.

Det er:
  .IndexOf("noget", start, antal)
ikke:
  .IndexOf("noget", start, slut)
hvilket betyder at:
  xxx.IndexOf("noget", 1, xxx.Length)
skal gå galt.

xxx.IndexOf("noget", 0, xxx.Length)

eller

  xxx.IndexOf("noget")
Avatar billede aaberg Nybegynder
13. december 2004 - 09:26 #13
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester