Dla danego katalogu, w jaki sposób mogę uzyskać listę plików w porządku chronologicznym (według daty modyfikacji) w pliku Node.JS? Nic nie widziałem w dokumentach systemu plików.Korzystanie z Node.JS, w jaki sposób uzyskać listę plików w porządku chronologicznym?
Odpowiedz
Daj ten strzał.
var dir = './'; // your directory
var files = fs.readdirSync(dir);
files.sort(function(a, b) {
return fs.statSync(dir + a).mtime.getTime() -
fs.statSync(dir + b).mtime.getTime();
});
Użyłem wersji "sync" metod. Powinieneś uczynić je asynchronicznymi w razie potrzeby. (Prawdopodobnie właśnie readdir
część.)
Prawdopodobnie można zwiększyć wydajność trochę jeśli buforowania informacji statystycznych.
var files = fs.readdirSync(dir)
.map(function(v) {
return { name:v,
time:fs.statSync(dir + v).mtime.getTime()
};
})
.sort(function(a, b) { return a.time - b.time; })
.map(function(v) { return v.name; });
Czy próbowałeś już fs.readdir()
?
fs.readdir() nie zwraca w porządku chronologicznym. – Newtang
Nie sądzę, że jakakolwiek zdefiniowana funkcja zamówi je dla ciebie, ale możesz go użyć w połączeniu z 'fs.stat (path, [callback])' (używając mtime) do sortowania tablicy. http://stackoverflow.com/questions/7559555/last-modified-file-date-in-node-js – Chase
skończyło się za pomocą podkreślenia jak daje okazję, aby wykazać co stat użyć do sortowania.
1-te pobrać pliki w katalogu z użyciem files = fs.readFileSync(directory);
(może chcesz spróbować ERR catch w katalogu przypadków nie istnieje lub uprawnienia do odczytu)
Następnie przekazać je do funkcji jak następnym. To zwróci ci uporządkowaną listę.
function orderByCTime(directory, files) {
var filesWithStats = [];
_.each(files, function getFileStats(file) {
var fileStats = fs.statSync(directory + file);
filesWithStats.push({
filename: file,
ctime: fileStats.ctime
});
file = null;
});
return _.sortBy(filesWithStats, 'ctime').reverse();
}
Podkreślenie sort by asc by default. Odwracam go, ponieważ potrzebuję go w malejącej kolejności.
Możesz wybrać sortowanie według innej statystyki (check node fs documentation here). Wybieram użycie ctime, ponieważ powinno to również uwzględniać "dotykanie" pliku.
Nadzieja pomaga,
- 1. `tag git` posortowany w porządku chronologicznym daty zatwierdzenia wskazał na
- 2. Jak uzyskać listę nazw właściwości w klasie w pewnym porządku
- 3. W jaki sposób można uzyskać dostęp losowy do odczytu z (dużych) plików przy użyciu pliku node.js?
- 4. Jak uzyskać listę zmienionych plików w svn?
- 5. Czy korzystanie z AWT z JavaFx jest w porządku?
- 6. Korzystanie z plików cookie w Laravel 4
- 7. Jak uzyskać listę wszystkich plików z rozszerzeniem ESY w katalogu?
- 8. Jak uzyskać listę plików z określonego folderu w pamięci wewnętrznej?
- 9. jak uzyskać listę wszystkich otwartych plików w edytorze Eclipse?
- 10. W jaki sposób Node.js obsługuje jednoczesne żądania z jednym wątkiem?
- 11. Korzystanie z Google maps API v3 w jaki sposób uzyskać LatLng z podanego adresu?
- 12. Korzystanie z jQuery w jaki sposób wybrać zakres wierszy?
- 13. Sortuj listę w porządku rosnącym według daty od sqlite
- 14. W pliku node.js w jaki sposób uzyskać nagłówek Content-Length w odpowiedzi na http.get()?
- 15. W Elixir, w jaki sposób można przekształcić zakres w listę?
- 16. W jaki sposób wydajność rozumie obietnice w aplikacji Node.js/Koa.js?
- 17. W jaki sposób introspekcja web.xml z serwletu?
- 18. Ajax upload plików w node.js
- 19. Korzystanie z Pythona 2.6 w jaki sposób uzyskać dzień miesiąca jako liczbę całkowitą?
- 20. node.js jade - w jaki sposób ustawić typ zawartości w jaderze
- 21. W jaki sposób chciałbym uzyskać unikalną identyfikację komputera w pliku node.js?
- 22. Python - jak posortować listę wartości liczbowych w porządku rosnącym
- 23. Zapętlanie plików w folderze Node.JS
- 24. W jaki sposób można używać plików cookie z systemem Superagent?
- 25. Jak uzyskać listę wszystkich plików wideo w telefonie iPhone?
- 26. W jaki sposób przycisk może uzyskać ostrość?
- 27. Pokazuję listę plików w ListView
- 28. Ng-admin: w jaki sposób mogę utworzyć niestandardową listę szablonów?
- 29. Jak uzyskać listę plików, które zostały "wymagane" w Ruby?
- 30. W jaki sposób można utworzyć miniatury plików PDF za pomocą węzła node.js i gm
50. głosów w górę ... – 981
getTime() nieokreślony. – 981