Ruby, yol + dosya adından yol alınıyor


88

Programlama dili: Ruby 1.9

Problem Dizesi: C:/Test/blah.txt
toC:/Test/

Bunun kolay bir soru olduğunu biliyorum, ancak Google ve Ruby Quickref'in benim için bir Fileçözümü yok.
Ve Regex ile hiç deneyimim yok.

Yanıtlar:


171

Ruby File.dirnameyöntemini kullanın .

File.dirname("C:/Test/blah.txt")
# => "C:/Test" 

4
Benim için File.dirname("/a/b/c/d")doğru şekilde döndürür, /a/b/cancak File.dirname("/a/b/c/d/")(sondaki eğik çizgi) de döndürülür /a/b/c.
Jason

3
Yakut belgelerinde şu anda aradığınızı ~ tam olarak ~ bulmak için bağlam olmadan çok fazla bilgi var. Zaten biliyorsan tazelemek veya her şeyi öğrenmeye çalışıyorsanız çalışmak harika, bir projedeyseniz ve sadece bunu bilmeniz gerekiyorsa korkunç. Bu cevap için çok teşekkürler, hayatı benim için çok kolaylaştırdı.
JackChance

0

Ruby Pathname sınıfı daha çok yönlü olacaktır:

require 'pathname'

pn = Pathname.new("C:/Test/blah.txt")
p pn.dirname.to_s + Pathname::SEPARATOR_LIST

hangi verir C:/Test/.

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.