IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Extraire l'extension d'un fichier


Sujet :

JavaScript

  1. #21
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 224
    Par défaut
    J'ai fait un copier / coller de ton code et j'ai supprimé tous les document.write.

    Mais je n'ai eu que la première boite d'alerte.

    Francois

  2. #22
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Il s'agit bien d'ECMAScript
    pour être plus précis de JScript qui est le moteur JavaScript de Microsoft
    et celui-ci à accès au système de fichier moyennant certaines conditions.

    il suffit d'aller sur msdn et de chercher GetExtensionName

    pour tout ceux qui trouve une ressemblance avec VB il faut savoir que GetExtensionName n'est ni une fonction JScript ni VBScript
    c'est une méthode d'un objet de la bibliothèque de MS pour traiter les fichiers.

    tout comme getElementByID n'est pas une méthode JavaScript mais une méthode du DOM
    dans les deux cas une liaison est défini au niveau du langage hôte pour scripter l'objet.

    la méthode GetExtensionName existe dans tous les langages hôte pour les quel il existe un binding de cette librairie.

    De la même façon pour getElementById qui est une méthode du DOM se retrouve dans Javascript mais aussi dans java
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    package org.w3c.dom;
    public interface Document extends Node {
        ...
        public Element getElementById(String elementId);
    }

    un autre exemple pour comprendre cette dé-corrélation. la fonction mysql_connect
    cette fonction est définie dans la librairie permettant une connexion à mysql. on la retrouve dans C/C++
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MYSQL *mysql_connect(...)
    Mais aussi dans php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    resource mysql_connect (...)
    etc.


    pour finir JavaScript en lui même ne possède pas de fonction et un seul objet : Null
    tout le reste n'est que complément.
    la norme prévoit tout de même quelque objet standard un peut comme les lib par défaut de certain autre langage
    il s'agit de Date et de Math. il y a aussi des prototypes pré-définis : Array et RegExp

    le reste window document etc. tout cela est défini par le DOM est non par javascript
    pour ce qui est des objets comme ActiveXObject JScript, qui est conforme à la norme, les ajoute tout comme le DOM ajoute les siens.

    A+JYT

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 224
    Par défaut
    Essai fait avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var sExt = f1.item().match(/\.([^.]+)$/);
    alert("sExt0: "+sExt[0]);
    Résultat négatif: je n'ai tjs pas la deuxième boite d'alerte.

    Francois

  4. #24
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    un Enumerator object retourne de objet de type file, dans ton cas, pour y accéder on utilise la méthode item() qui pointe donc sur un objet FILE.

    Faire un split ou autre manipulation sur un objet n'aboutis à RIEN.

    Il faut donc utiliser les propriétés des FILES pour récupérer le name
    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
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var f = fso.GetFolder(repertoire);
    var f1 = new Enumerator(f.files);
    var s = "";
    for (; ! f1.atEnd(); f1.moveNext()) {
      // recup propriete name
      var sFile = f1.item().Name;
      s += 'File : ' + sFile;
      // methode MSDN
      s += '<br>- Ext #0 : ' + fso.GetExtensionName(sFile);
      // methode 1    
      s += '<br>- Ext #1 : ' + sFile.split('.').reverse()[0];
      // methode 2
      s += '<br>- Ext #2 : ' + sFile.match(/\.([^.]+)$/)[1];
      s += "<br>";
    }
    document.write(s);
    il faut prendre la peine de parcourir les liens donnés...

  5. #25
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 224
    Par défaut
    bonjour NoSmoking et merci de ton aide qui a été décisive.

    Comme je ne voulais prendre que les photos présentes dans un dossier, j'ai pu sélectionner les fichiers sur leur extension.

    Et, si j'ai raté un lien, ça peut être simplement pour ne pas l'avoir compris car mes connaissances en JS sont limitées comme tu l'as compris.

    Merci encore.

    Francois

Discussions similaires

  1. Extraire l'extension d'un fichier
    Par 94Skarb dans le forum Contribuez
    Réponses: 2
    Dernier message: 04/05/2013, 23h04
  2. extraire l'extension d'un fichier avec la commande find
    Par klem5 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 21/03/2011, 17h39
  3. Réponses: 2
    Dernier message: 23/03/2009, 16h45
  4. Extraire l'extension d'un fichier
    Par Coroebus dans le forum VB.NET
    Réponses: 2
    Dernier message: 13/11/2007, 13h35
  5. Extraire une extension d'un fichier
    Par Flow_75 dans le forum C++Builder
    Réponses: 1
    Dernier message: 24/10/2006, 12h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo