Avatar billede pelkjaer Nybegynder
03. oktober 2003 - 10:14 Der er 5 kommentarer og
1 løsning

Replace / Tilføj i billedesti

Problem:

Jeg har x antal billeder som hedder fx. test.png (kunne også være jpg, bmp etc.)

Jeg har brug for når jeg viser et billede med en databinder, at lave om i denne sti.

1: extentionen skal altid være .jpg selvom stien fra databasen er fx. test.png

2: Inden extentionen .jpg, skal jeg have indsat flg.: _logo_ID (her er ID et udtræk fra db - kan være hvad som helst, og skal hives ud med en databinder).

Dvs det endelige billede hedder fx. "test_logo_2.jpg" istedet for det oprindelige "test.png" som der står i databasen.

Jeg håber nogle C# hajer kan hjælpe med sådan en funktion.
Avatar billede askhoej Praktikant
03. oktober 2003 - 14:54 #1
string strImagePath = FixImagePath(ImageFromDB,IDFromDB);

private string FixImagePath(string Image,int ID)
{
    string strReturn = "";
    string strTemp = "_logo_" + ID.ToString() + ".jpg";

    strReturn = Image.Replace(".png",strTemp);
    //strReturn = Image.Replace(".gif",strTemp);  etc....

    return strReturn;
}

/askhoej
Avatar billede pelkjaer Nybegynder
07. oktober 2003 - 08:43 #2
Virker glimrende (dog vil den ikke debugge i vs.net?)
Avatar billede pelkjaer Nybegynder
09. oktober 2003 - 13:30 #3
Har et lille problem

Jeg ved som udgangspunkt at billederne (string Image) kan være af flg. typer:

.jpg
.jpeg
.png
.bmp

Derfor har jeg forsøgt mig med denne fremgangsmåde uden held:

if (Image.IndexOf(jpegString)) {
  strReturn = ((Image.Replace(".jpg",strTemp) != null) && (Image.Replace(".jpg",strTemp).Length > 0)) ? Image.Replace(".jpg",strTemp) : "transparent.gif";
} else if (Image.IndexOf(bmpString)) {
....osv

Kan du også løse den?
Avatar billede askhoej Praktikant
09. oktober 2003 - 15:36 #4
Kan du ikke lige smide hele funktionen :-)
Avatar billede pelkjaer Nybegynder
09. oktober 2003 - 16:00 #5
Joo men den er jo magen til din:

    protected string FixImagePath(string Image, int ID) {
      string strReturn = "";
      string strTemp = "_personal_" + ID.ToString() + ".jpg";

      strReturn = ((Image.Replace(".jpg",strTemp) != null) && (Image.Replace(".jpg",strTemp).Length > 0)) ? Image.Replace(".jpg",strTemp) : "transparent.gif";

      return "../ildsjaele/userImages/" + strReturn;
    }
Avatar billede pelkjaer Nybegynder
13. oktober 2003 - 12:05 #6
Har selv løst det:

      // Load into array and handle whitespace
      string[] output = Image.Replace(" ","20").Split(new Char[] {});
   
      // If .jpg
      if (output[0].ToString().EndsWith("jpg")) {
        strReturn = ((Image.Replace(".jpg",strTemp) != null) && (Image.Replace(".jpg",strTemp).Length > 0)) ? Image.Replace(".jpg",strTemp) : "transparent.gif";
      }

osv
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