Avatar billede Slettet bruger
23. juni 2005 - 11:14 Der er 3 kommentarer og
1 løsning

Real path til min klasse

Hejsa

Jeg har en klasse om ligger her:
M:\Eclipse\workspace\MaxiCom\FileStuff\
Jeg vil gerne have path til det bib der hedder "FileStuff", jeg kunne selvfølig hardcode den ind, meeen den løsning er jeg ikke glad for :)
Avatar billede arne_v Ekspert
23. juni 2005 - 11:18 #1
prøv den her kode:

import java.util.*;

public class GetPathExt {
    private static String getPath(Class cls) {
        String cn = cls.getName();
        StringTokenizer st = new StringTokenizer(cn,".");
        StringBuffer sb = new StringBuffer("");
        boolean first = true;
        while(st.hasMoreTokens()) {
            if(first) {
                first = false;
            } else {
                sb.append("/");
            }
            sb.append(st.nextToken());
        }
        sb.append(".class");
        String path = GetPathExt.class.getClassLoader().getResource(sb.toString()).getPath();
        int ix = path.indexOf("!");
        if(ix >= 0) {
            path = path.substring(0, ix);
            int ix2 = path.lastIndexOf("/");
            return path.substring(6, ix2 + 1);
        } else {
            int ix2 = path.lastIndexOf("/");
            return path.substring(1, ix2 + 1);
        }
    }
    public static void main(String[] args) {
        System.out.println(GetPathExt.getPath(GetPathExt.class));
    }
}
Avatar billede Slettet bruger
23. juni 2005 - 11:27 #2
Det virker bare :-)
Smid et svar så du kan få dine point
Havde det ikke bare været nemmere hvis Sun have lavet en System.getPath() ;-)
Avatar billede arne_v Ekspert
23. juni 2005 - 11:44 #3
svar
Avatar billede arne_v Ekspert
23. juni 2005 - 11:45 #4
nu er det jo ikkr sikkert at app ligger i et dir

derfor skal man også i min kode angive hveilken klasse man vil
have info om
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