Avatar billede ddobbeltv Nybegynder
18. marts 2003 - 09:27 Der er 10 kommentarer og
1 løsning

Redigering i en String

Hej jeg har et lille problem... Er der en måde man kan redigere en tekststreng hentet fra en database.. eksempelvis henter jeg en tekst streng der hedder /Images/d_bluse_small.jpg .. hvordan kan jeg så fjerne _small ? så stringen kommer til at hedde d_bluse.jpg ? jeg ved godt det måske vil være nemmere at lave en ny kolonne i databasen... men.....

Plz
Jokke
Avatar billede martinhrj Nybegynder
18. marts 2003 - 09:36 #1
du kan bruge substring:

String newString = oldString.substring(0, 5);

så bliver newString en streng indeholdende de 5 første bogstaver i oldString.

String newString = oldString.substring(5);

så bliver newString en streng indeholdende alle bogstaver fra det 5. og frem i oldString.
Avatar billede arne_v Ekspert
18. marts 2003 - 09:36 #2
Du laver ganske almindelig Java String manipulation
inden i <% %>.
Avatar billede martinhrj Nybegynder
18. marts 2003 - 09:36 #3
Så skal du jo selvfølgelig selv sammensætte dem så du får både det før og efter small med :)
Avatar billede arne_v Ekspert
18. marts 2003 - 09:38 #4
<%
String filename = rs.getString("filename");
int ix = filename.indexOf("_small");
if(ix >= 0) {
  filename = filename.substring(0,ix) + filename.substring(ix + 6);
}
%>
Fil navn er <%=filename%>.
Avatar billede arne_v Ekspert
18. marts 2003 - 09:40 #5
Hvis din JSP engine kører i en JDK 1.4.x kan du bruge:

Fil navn er <%=rs.getString("filename").replaceAll("_small","")%>.
Avatar billede ddobbeltv Nybegynder
18. marts 2003 - 09:55 #6
arne ... jeg kører jdk1.2 ... kan ja skrive det første i head, og så hente filnavnet med filename ?? kan ikke lige se hvordan rs.getString"filename" ved at det er min kolonne fra databasen den skal søge i ?

Skal jeg ikke udskifte "filename" med noget ??

Jokke
Avatar billede arne_v Ekspert
18. marts 2003 - 09:59 #7
Ja.

String filename = rs.getString("filename");

forudsætter at du har hentet connection, lavet statement og udført query
og derfor står med et ResultSet

og at ResultSet hedder rs og kolonnen i tabellen hedder filnavn (de skal
selvfølgelig rettes til de navne du bruger)
Avatar billede arne_v Ekspert
18. marts 2003 - 09:59 #8
og at ResultSet hedder rs og kolonnen i tabellen hedder filename (de skal
selvfølgelig rettes til de navne du bruger)
Avatar billede ddobbeltv Nybegynder
18. marts 2003 - 10:03 #9
Internal Servlet Error:

org.apache.jasper.JasperException: Unable to compile class for JSPC:\tomcat\work\localhost_8080\_0002fMyVisVarer_0002ejspMyVisVarer_jsp_8.java:80: Undefined variable or class name: rs
                String filename = rs.getString("varen.getBillede()");

Den laver den der fejl dims under rs.. som om den ikke forstår det !
Avatar billede arne_v Ekspert
18. marts 2003 - 10:59 #10
rs er dit ResultSet.

Du har formentlig et eller andet i stil med:

Class.forName("drivername");
Connection con = DriverManager.getConnection("url", "username", "password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM tablename");

eller ?
Avatar billede arne_v Ekspert
18. marts 2003 - 10:59 #11
Du skal erstatte rs med navnet på dit result set.
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
Kurser inden for grundlæggende programmering

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