Bonjour,

Mon application plante dés que j'essais de remplacer ces caractères "*\?", pourtant je dois bien les filtrer car sous windows il est impossible de créer un repertoire avec ces caractères

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
 if(!requete.getText().equals("")){
              //création de l'arborescence
              path = zepath.getText();//+"/"+requete.getText(); //gestion de l'arborescence
              File fb = new File(path);
              fb.mkdirs();
              requete4nomdossier = requete.getText();
              requete4nomdossier=requete4nomdossier.replaceAll(":","_");
            //requete4nomdossier=requete4nomdossier.replaceAll("\\","");
              requete4nomdossier=requete4nomdossier.replaceAll("<"," ");
              requete4nomdossier=requete4nomdossier.replaceAll(">"," ");
              requete4nomdossier=requete4nomdossier.replaceAll("|"," ");
            //requete4nomdossier=requete4nomdossier.replaceAll("?"," ");
              requete4nomdossier=requete4nomdossier.replaceAll("/"," ");
            //requete4nomdossier=requete4nomdossier.replaceAll("*"," ");
 
              path = zepath.getText()+"/"+requete4nomdossier; //gestion de l'arborescence
              File fb2 = new File(path);
              fb2.mkdirs();
j'ai le message
Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
^
at java.util.regex.Pattern.error(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.util.regex.Pattern.<init>(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.lang.String.replaceAll(Unknown Source)
at ihm.initrecherche(ihm.java:749)
at ihm$1.actionPerformed(ihm.java:208)
at javax.swing.JTextField.fireActionPerformed(Unknown Source)
at javax.swing.JTextField.postActionEvent(Unknown Source)
at javax.swing.JTextField$NotifyAction.actionPerformed(Unknown Source)
at javax.swing.SwingUtilities.notifyAction(Unknown Source)
at javax.swing.JComponent.processKeyBinding(Unknown Source)
at javax.swing.JComponent.processKeyBindings(Unknown Source)
at javax.swing.JComponent.processKeyEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
qui s'affiche, quelque soit ma requête

Si quelqun a une idée ...