Windows 7 dosya adı uzunluğu 129 karakterle sınırlıdır


17

MP3'leri doğru bir şekilde adlandırmaya çalışıyorum ve 129 karaktere kadar rastgele uzunluklara çarptım (128 değil mi?). NTFS, dosya adlarında 255 karakteri destekler. Bunu nasıl düzeltebilirim?

Yıldız Savaşları - 6 - Jedi'nin Dönüşü - 2 - 07 - Endor 2 Muharebesi, Leia Yaralandı, Düello Başladı, Bunker, Kara Si.mp3


2
Çok sayıda soruna yol açabileceğinden, gerçekten uzun dosya isimlerine güvenmemek daha iyidir. MP3'ler, bunun için ID3 etiketleri biçiminde gömülü meta veriye sahip olabilir ve / veya dizinleri kullanabilir.
JamesRyan

3
Dosyaları ve çalma listelerini açarım; "Medya kütüphanelerini" kullanmıyorum. Koleksiyonlarım düzgün bir şekilde adlandırılıyor, herhangi bir "1.mp3" dosyam yok ve dosyaları düzgün bir şekilde adlandıramayacak kadar tembel insanları durduramıyorum; Hangi albümde "1.mp3" varsa, her albümde en az bir şarkı var. ಠ_ಠ
John

Yanıtlar:


13

Ters eğik çizgi karakterleri de dahil olmak üzere tüm yol adı için toplam 260 karakteri aşmanız mümkündür.

MP3 dosyasının adı da dahil olmak üzere, yolda kaç karakter var?


1
Evet, sürücüdeki dosyaları dizinsiz olarak yeniden adlandırmak daha uzun isimlere izin veriyor. Oldukça topal olarak dosya adı ve yollar birlikte sayılır ve ayrı değildir.
John

5
MAX_PATH sabiti 256 değil 256 olarak tanımlandı
phuclv

Klasörler olsa da, yalnızca en fazla "247 char + <null>" olur. Bkz stackoverflow.com/a/15971467/632951
Pacerier

35

Windows varsayılan toplam yol uzunluğu 260 karakter (aşmamalıdır drive+ :\+ 255 characters of filename+ null terminator+ muhtemelen nihai için \durumunda yolu bir dizindir hatta yuvarlama basitçe için). 260 karakterli bir yolun gerçekten derin bir yol olduğu DOS'un 8.3 isim döneminden kalma bir kalıntıydı.

Klasöre olan yolunuzun çok uzun olması muhtemeldir, bu nedenle dosya adınızın kalan kısmı sadece 129'dur. Daha uzun bir yol istiyorsanız, birkaç çözümünüz vardır:

  • öneki ile tam nitelikli dosya isimleri kullanın \\?\, bu şekilde yol boyunca maksimum 32767 karakter kullanabilirsiniz
  • kısaltmak için yoldaki klasörleri yeniden adlandırın
  • dosyayı içeren klasörüsubst / mountvol/ diskmgmt.msc ile bir sürücü karakterine bağlayın . Bu şekilde, dosya adınız için en fazla 255 karakter kullanabilirsiniz.
  • yoldaki başka bir sığ klasöre bir bağlantı / sembolik bağlantı oluşturun . Sürücü harflerine bağlantılar oluşturamazsınız, bu nedenle eğer montaj yöntemini kullandığınız sürece dosya adlarına erişemezsiniz.

Windows 10’dan bu yana MAX_PATH sınırlamasını kaldırarak başka bir seçenek daha var § . HKLM\SYSTEM\CurrentControlSet\Control\FileSystem LongPathsEnabledKayıt defterinde ayarlayarak etkinleştirebilir veya Bilgisayar Yapılandırması> Yönetim Şablonları> Sistem> Dosya Sistemi> Grup ilkesinde NTFS uzun yollarını etkinleştir seçeneğini belirleyebilirsiniz.


Daha fazla oku:

,7 Maksimum 32.767 karakter yolu yaklaşıktır, çünkü \\?\önek sistem tarafından çalışma zamanında daha uzun bir dizgeye genişletilebilir ve bu genişletme toplam uzunluk için geçerlidir.

§ Windows 10'dan başlayarak, sürüm 1607, MAX_PATHortak Win32 dosyalarından ve dizin işlevlerinden sınırlamalar kaldırılmıştır. Ancak, yeni davranışa katılmalısınız.


Teşekkürler, David ilk mesaj attı ve işe yaradı, ancak kaynakları +1 eklediniz.
John

1
Benzer bir çözüm bir kavşak kullanmaktır. Check out schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html
Urhixidur

1
Ben de bu cevabı kullanmayı tercih ederim. Bu şekilde, dosyalarınızı istediğiniz yerde tutabilir ve yine de istediğiniz şekilde adlandırabilirsiniz. Ayrıca, bunları cihazınıza kopyaladığınızda, çok düz bir dosya hiyerarşisine sahip olduklarından aptalca Windows sınırlandırmasıyla ilgilenmeyeceklerdir ve dosya adını doğrudan kullanamayabilirler (örneğin, iPhone / iPad / iEtc hex kullanıyor) dosya adları için karakterler ve bir dizin dosyasına çapraz referanslar).
phyrfox 13:14

Bir dosya adı için maksimum karakter sayısı 256 değil 255 karakterdir
Edd

@Edd 255 karakter + boş sonlandırma
phuclv

0

Windows 7, dosya adlarını yol adları da dahil olmak üzere 256 karakterden daha uzun süre kaydetmenize olanak tanır ve bunlara da kolayca erişilebilir. Karşılaşabileceğiniz tek küçük zorluk, onları bir yerden başka bir yere kopyaladığınızda ortaya çıkar, ancak dosya adını değiştirmek istemezseniz, dosyayı kopyalamayın ya da olduğu gibi kaydedin. Her zaman olduğu gibi saklıyorum ve hiçbir zaman sorun yaşamadım. Muhtemelen limiti aşan birkaç yüz dosya ismim var.


hayır, dosya sistemi sınırı olduğundan, 255 karakterden uzun dosyaları kaydetmenize izin vermez
phuclv

Bununla birlikte, yol biraz daha uzun olabilir (veya MAX_PATH sınırlamasının kaldırılmasından sonra çok daha uzun olabilir)
phuclv
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.