John Keats Skrevet 9. mai 2012 Del Skrevet 9. mai 2012 Kopierer bare det samme som jeg postet på freakforum. Hei. Holder på med en liten batch downloader for å laste ned bilder fra en URL. Ble rett og slett lei av å manuelt endre URL'en for hvert bilde så jeg kan laste dem ned, men har et par spørsmål. Det enkleste for å illustrere hvordan jeg har gjort det vil vel være å laste opp et bilde av programmet. Jeg er ikke veldig godt kjent med strings, så det jeg gjorde var å dele opp URL'en i 3 deler. filendelsen, nummeret på bildet, og alt som kommer før. Konverterer nummeret til en integer som jeg øker med 1 for hvert bilde jeg laster ned, og konverterer tilbake til en streng, før jeg setter alle 3 sammen å laster ned bildet. Jeg ser selv at dette ikke er noen god måte å gjøre dette på, og jeg har det problemet med at når jeg kommer til bilde 99, så kræsjer programmet. I eksempelet går bildene fra 0078 til 0110. Og jeg konverterer bare de to siste sifrene til en integer, da å konvertere 0078 til int fører til at de to nullene forsvinner. Noen som kan dytte meg i riktig retning når det gjelder å håndtere strings slik jeg ønsker? Altså å øke tallet med 1 etter å ha lastet ned bildet. Koden er heller ikke spesielt fleksibel om URL'en er formatert på en annen måte. Lenke til kommentar
GeirGrusom Skrevet 9. mai 2012 Del Skrevet 9. mai 2012 Sjekk ut string.Format funksjonen. Den gir deg ganske god kontroll over hvordan stringen skal se ut. Lenke til kommentar
RulleRimfrost Skrevet 9. mai 2012 Del Skrevet 9. mai 2012 bildenummer.tostring("d4") skal vel padde et tall opp til 4 karakterer. Lenke til kommentar
John Keats Skrevet 9. mai 2012 Forfatter Del Skrevet 9. mai 2012 (endret) Takk for svar så langt. Bruker nå denne biten kode for å gjøre det jeg ønsker. int charactersInFileName = CountChars(imageNumber); string tmpNumber = "{0:" + string.Empty.PadLeft(charactersInFileName, '0') + "}"; imageNumber = string.Format(tmpNumber, currentImage); Det optimale hadde såklart vært om alt en trengte gjøre var å skrive inn URL'en til det første bildet, og hvor mange bilder man trenger og la programmet fikse resten, men jeg vet ikke hvor jeg skal begynne. Må i såfall prøve å lese kun tallene ut av URL'en, men da vet jeg ikke hva som skjer om det er tall andre steder i URL'en, som f.eks www.foo23.foo/image001.jpg Endret 9. mai 2012 av Hello Kitty Lenke til kommentar
Jorndel Skrevet 30. mai 2012 Del Skrevet 30. mai 2012 Takk for svar så langt. Bruker nå denne biten kode for å gjøre det jeg ønsker. int charactersInFileName = CountChars(imageNumber); string tmpNumber = "{0:" + string.Empty.PadLeft(charactersInFileName, '0') + "}"; imageNumber = string.Format(tmpNumber, currentImage); Det optimale hadde såklart vært om alt en trengte gjøre var å skrive inn URL'en til det første bildet, og hvor mange bilder man trenger og la programmet fikse resten, men jeg vet ikke hvor jeg skal begynne. Må i såfall prøve å lese kun tallene ut av URL'en, men da vet jeg ikke hva som skjer om det er tall andre steder i URL'en, som f.eks www.foo23.foo/image001.jpg Start og let fra slutten og ikke starten? LastIndexOf ?? Lenke til kommentar
brgr Skrevet 30. mai 2012 Del Skrevet 30. mai 2012 Kan vel tipse dg om å se på regular expressions. Da disse vil gi ganske god kontroll ved rett bruk Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå