nodejs obtient le nom du fichier du chemin absolu?

Si une API pouvait récupérer un nom de fichier à partir d’un chemin de fichier absolu?

par exemple "foo.txt" de "/var/www/foo.txt"

Je sais que cela fonctionne avec les opérations sur les chaînes, comme fullpath.replace(/.+\//, '') mais je veux savoir s’il y a un moyen plus formel, comme file.getName() dans java, pourrait le faire.

NodeJS obtient le nom du fichier du chemin absolu?

    Utilisez la méthode basename du module path :

     path.basename('/foo/bar/baz/asdf/quux.html') // returns 'quux.html' 

    Voici la documentation de l’exemple ci-dessus.

    Pour obtenir la partie nom de fichier du nom de fichier, la méthode basename est utilisée:

     var path = require("path"); var fileName = "C:\\Python27\\ArcGIS10.2\\python.exe"; var file = path.basename(fileName); 

    console.log (fichier); Si vous voulez le nom de fichier sans l’extension, vous pouvez passer la variable d’extension (contenant le nom de l’extension) à la méthode nom_base en indiquant à Node de ne renvoyer que le nom sans l’extension:

     var path = require("path"); var fileName = "C:\\Python27\\ArcGIS10.2\\python.exe"; var extension = path.extname(fileName); var file = path.basename(fileName,extension); console.log(file); 

    Si vous savez déjà que le séparateur de chemin est / (c’est-à-dire que vous écrivez pour une plate-forme / un environnement spécifique), comme l’indique l’exemple de votre question, vous pouvez restr simple et diviser la chaîne par séparateur:

     '/foo/bar/baz/asdf/quux.html'.split('/').pop() 

    Ce serait plus rapide (et plus propre) que de remplacer par une expression régulière.

    Pour ceux qui souhaitent supprimer une extension du nom de fichier, vous pouvez utiliser https://nodejs.org/api/path.html#path_path_basename_path_ext

     path.basename('/foo/bar/baz/asdf/quux.html', '.html');