Ruby'de "755" değerini 0755'e nasıl dönüştürebilirim? Bir dizeyi kullanarak bir yönteme izinler geçirmek ve sonra chmod kullanımı için dönüştürmek istiyorum.Ruby dize sekizlik mi?
cevap
Bu yapmalıyım:
"755".to_i(8)
# => 493
"755".to_i(8) == 0755
# => true
Biraz geç partiye
Fantastik, bu testi irb içinde yaptı ve" true "aldım -> 0755 ==" 755 ".to_i (8) – Christoffer
Sadece bunu yanıtlarıma ekledim, böylece insanlar bunun ne anlama geldiğini anladılar. –
def append_zero_to_string(string)
0.to_s + string
end
Bir dizge beklemiyor. "755" bir dize iken, 0755 bir dize değil. –
, ancak böylece bir Tamsayı örneğini dize ve tabanını geçirerek giriş hatalarını kontrol edebilirsiniz,
Integer("755",8)=493
Integer("855",8)
ArgumentError: invalid value for Integer(): "855"
begin
Integer("855",8)
rescue ArgumentError, TypeError
"Bad input"
end
- 1. Ruby kütüphanesi/mücevher mi?
- 2. Ruby: modüller ve süper mi?
- 3. Refactoring Ruby: Dize dizisini int dizisine dönüştürme
- 4. Dize regexp ruby tüm basamakları nasıl alınır?
- 5. Ruby: gsub Dize ile Dosyayı Değiştir
- 6. Dize her alanı bölmez mi?
- 7. Son 4 karakteri dize mi?
- 8. dize
- 9. NSLog bazen niçin ucode karakterleri için sekizlik yazdırıyor?
- 10. Bu ilişki Ruby on Rails'de açıklanabilir mi?
- 11. Metinden grafik oluşturmak için Ruby kütüphanesi mi?
- 12. Ruby: MiniTest ile sınıf yöntemini mi kullanıyorsunuz?
- 13. Ruby
- 14. Ruby
- 15. Ruby
- 16. Dize anahtarlı HashMap pas içinde mi?
- 17. Dize atama referans/kopya ile mi?
- 18. GSON: Bir dize bekleniyordu, ancak BEGIN_OBJECT mi?
- 19. Dize adına dayalı bir Enum yüklenebilir mi?
- 20. Ruby vs Ruby On Rails
- 21. ruby 1.9
- 22. Ruby: boş mu? Raylar
- 23. Ruby: Bir nesnenin özelliğini bir dize/sembol kullanarak getir/ayarla
- 24. Yakut dize alt sırt ben Ruby basit bir dize alt yapmaya çalışıyorum
- 25. Ruby & Ruby on Rails
- 26. (Ruby, Rails) (Ruby, Rails)
- 27. Ruby Ruby eşdeğeri Python
- 28. Dize
- 29. Ruby modülü verilen argümanlar bir yöntemi mi çağırıyor?
- 30. Ruby/RoR: Orijinal metodu super() ile mi çağırıyorsunuz?
Gerçekten ne istediğini net değil. Bir dizeye sıfır eklemek ister misiniz? Ya da ne? –
Dizenin başındaki gibi bir dizgeyi bir sekizliğe dönüştürmek istiyorum. – Christoffer
@Pavel: "755" == 0755, false değerini döndürür ... – Christoffer