Suppression de lettre dans un String -[Java]-

Résolu
SoGeek Messages postés 193 Statut Membre -  
SoGeek Messages postés 193 Statut Membre -
Bonjour,
Je vous présente mon problème : dans mon code source je trouve la donnée d'une clef registre :
Ensuite je fais System.out.println(path); et j'ai :
C:\Program Files\Steam\SteamApps\common\left4dead2\
seulement voilà, j'aime seulement avoir C:\Program Files\Steam\SteamApps\common\ et donc enlever "left4dead2\"
Mais je ne sais pas comment m'y prendre j'ai bien sur essayer:
String path1 = path ;
String path11 = path.substring(0, 50);
Mais cela ne marchera pas car tout le monde n'a pas Steam installé dans C:\Program Files\Steam
et donc pas la meme longueur (en lettre) du chemin d'accés
J'aimerai donc supprimer les 11 dernieres lettres de ma clef registre (path)
Merci d'avance,
SoGeek :)
Configuration: Windows Vista
Firefox 3.5.7

7 réponses

  1. SoGeek Messages postés 193 Statut Membre 18
     
    Up :( ?
    0
  2. SoGeek Messages postés 193 Statut Membre 18
     
    Dubble up :) ?
    0
  3. SoGeek Messages postés 193 Statut Membre 18
     
    ààààààààààà l'aiiiiiiiiiide :D
    0
  4. Utilisateur anonyme
     
    salut
    tu n'as qu'a faire String.lastIndexOk('\\') qui te retourner le dernier index de ton \. Ensuite du peux faire String.substring(0, lastIndex). Si tu veux l'avant, dernier, alors fait String.lastIndexOk('\\', size-2)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. SoGeek Messages postés 193 Statut Membre 18
     
    Bonsoir progjv
    j'ai ajouté ton code source :

    int index = path1.lastIndexOf("\"); // dernier "\" trouvé

    int index = path1.lastIndexOf("\", index); // avant dernier "\" trouvé

    String path11 = path1.substring(0, index + 1);

    au mien mais cela ne marche pas, en fait ce que je demande précisément (et je te remercie d'avoir prété attention à ce sujet) le nom de la clef est celui ci :

    d:\steam\steamapps\account\counter-strike source\hl2.exe

    j'aimerai précisement couper ma chaine pour avoir ceci :

    d:\steam\steamapps\account\counter-strike source\

    j'ai ajusté ton code source en changeant

    - int index = path1.lastIndexOf("\");

    par

    - int index = path1.lastIndexOf("exe"); ou - int index = path1.lastIndexOf("e");
    ...
    System.out.println(path11);

    mais au démarrage du programme il ne m'affiche rien :( alors que System.out.println(path) (le String de la clef)

    j'obtiens : d:\steam\steamapps\account\counter-strike source\hl2.exe

    As-tu une idée :( ?
    Bonne soirée à toi/vous !
    0
  7. Utilisateur anonyme
     
    chez moi ca marche tres bien :

    public class Test {
    public static void main(String[] args) {
    String s = "d:\\steam\\steamapps\\account\\counter-strike source\\hl2.exe";
    s = s.substring(0, s.lastIndexOf('\\'));
    System.out.println(s);
    }
    }

    me donne "d:\steam\steamapps\account\counter-strike source"

    je comprends ptet pas ce que tu veux alors =)
    0
  8. SoGeek Messages postés 193 Statut Membre 18
     
    Yeah,
    Oh et bien vu comme ceci en effet cela marche héhé =D
    Merci bien progjv,
    et bonne jourée ;)
    SoGeek.
    0