Długość nazwy pliku systemu Windows 7 ograniczona do 129 znaków


18

Próbuję poprawnie nazwać pliki MP3 i uzyskałem dowolną długość 129 znaków (nie 128?). NTFS obsługuje 255 znaków w nazwach plików, jak to naprawić?

Star Wars - 6 - Return of the Jedi - 2 - 07 - Battle of Endor 2, Leia Is Wounded, The Duel Begins, Overtaking Bunker, Dark Si.mp3


2
Lepiej nie polegać na naprawdę długich nazwach plików, ponieważ może to prowadzić do wielu problemów. Pliki MP3 mogą mieć osadzone metadane w postaci tagów ID3 i / lub korzystać z katalogów.
— JamesRyan

3
Otwieram pliki i listy odtwarzania; Nie używam „bibliotek multimediów”. Moje kolekcje są poprawnie nazwane, nie mam żadnych plików „1.mp3” i nie mogę znieść ludzi zbyt leniwych, aby poprawnie nazwać pliki; która „1.mp3”, gdy każdy album zawiera co najmniej jeden utwór. ಠ_ಠ
— Jan

Odpowiedzi:


13

Możliwe jest, że przekroczysz 260 znaków dla całej nazwy ścieżki, w tym znaków odwrotnego ukośnika.

Ile znaków jest na ścieżce, w tym nazwa pliku mp3?


1
Tak, okazuje się, że zmiana nazwy plików na dysku bez katalogów pozwala na dłuższe nazwy. Dość kiepskie, że nazwa pliku i ścieżki są policzone razem, a nie osobno.
— Jan

5
stała MAX_PATH jest zdefiniowana jako 260, a nie 256
— phuclv

Jednak foldery mają maksymalnie „247 znaków + <null>”. Zobacz stackoverflow.com/a/15971467/632951
— Pacerier

34

W systemie Windows domyślna całkowita długość ścieżki nie może przekraczać 260 znaków ( drive+ :\+ 255 characters of filename+ null terminator+ prawdopodobnie dla ostatecznego \przypadku, gdy ścieżka jest katalogiem lub po prostu dla zaokrąglenia). Był to relikt z ery 8.3 DOS-a, w którym 260-znakowa ścieżka jest naprawdę głęboką ścieżką.

Możliwe, że ścieżka do folderu była już bardzo długa, więc pozostała część nazwy pliku to tylko 129. Jeśli chcesz dłuższą ścieżkę, masz kilka rozwiązań:

Od systemu Windows 10 istnieje inna opcja, usuwając ograniczenie MAX_PATH § . Możesz go włączyć, ustawiając HKLM\SYSTEM\CurrentControlSet\Control\FileSystem LongPathsEnabledw rejestrze lub ustawiając Konfiguracja komputera> Szablony administracyjne> System> System plików> Włącz długie ścieżki NTFS w zasadach grupy


Czytaj więcej:

‡ Maksymalna ścieżka 32 767 znaków jest przybliżona, ponieważ \\?\prefiks może zostać rozszerzony przez system w czasie wykonywania do dłuższego ciągu, a to rozszerzenie dotyczy całkowitej długości.

§ Począwszy od systemu Windows 10, wersja 1607, MAX_PATHograniczenia zostały usunięte z typowych funkcji plików i katalogów Win32. Musisz jednak wyrazić zgodę na nowe zachowanie.


Dzięki, David napisał pierwszy i zadziałało, ale uwzględniłeś zasoby, więc +1.
— Jan

1
Podobnym rozwiązaniem jest użycie skrzyżowania. Sprawdź schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
— Urhixidur

1
Wolałbym również użyć tej odpowiedzi. W ten sposób możesz przechowywać swoje pliki tam, gdzie chcesz, i nadal możesz nazwać je tak, jak chcesz. Ponadto po skopiowaniu ich na urządzenie najprawdopodobniej nie będzie to przeszkadzało w głupim ograniczeniu systemu Windows, ponieważ mają one bardzo płaską hierarchię plików i mogą nawet nie używać nazwy pliku bezpośrednio (np. IPhone / iPad / iEtc używa hex znaki dla nazw plików i odsyłacze do pliku indeksu).
— phyrfox,

Maksymalna liczba znaków w nazwie pliku to 255 znaków, a nie 256
— Edd

@Edd 255 znaków + zakończenie zerowe
— phuclv

0

System Windows 7 umożliwia zapisywanie nazw plików dłuższych niż 256 znaków, w tym nazw ścieżek, i można je również łatwo uzyskać. Jedyną niewielką trudnością, na jaką możesz natknąć się, jest skopiowanie ich z jednego miejsca do drugiego, ale pojawi się wyskakujące okienko z pytaniem, czy chcesz zmienić nazwę pliku, a nie skopiować plik lub zapisać go takim, jaki jest. Zawsze zapisuję to tak, jak jest i nigdy nie miałem żadnych problemów. Prawdopodobnie mam kilkaset nazw plików, które przekraczają limit.


nie, nie pozwoli ci zapisywać plików dłuższych niż 255 znaków, ponieważ jest to limit systemu plików
— phuclv

ścieżka może być jednak nieco dłuższa (lub znacznie dłuższa po usunięciu ograniczenia MAX_PATH)
— phuclv
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.