2011-03-14 17 views
20

NSURL, bir dosya yolum var ve sonuna bir NSString eklemek istiyorum (dosya adı) Bunu nasıl yapabilirim? Ama bundan sonra bütün şeyin bir NSURL olmasını istemiyorum.NSSSL'ye NSString Eklemek?

Teşekkürler. aşağıdakileri yapabileceğini Swift ise

NSURL *bUrl = [aUrl URLByAppendingPathComponent:@"newString"]; 

,

var bURL = aURL.URLByAppendingPathComponent("newString") 

Sen devlet de yapabilirsiniz: Bunun iyi bir çözüm olduğunu düşünüyorum

NSString *s = [aUrl.path stringByAppendingString:@"newString"]; 

cevap

6

Ben o kadar basit olarak düşünüyorum URL'nin bir dizin olup olmadığı,

Eğer bir dizine bir dosya NSURL varsa ve buna eklenen bir dosya adıyla NSURL yolunu içeren bir NSString ile bitirmek istiyorum
var bURL = aURL.URLByAppendingPathComponent("newString", isDirectory: true) 
+2

Bunu kullanırsanız, sonunda bir NSURL, bunu yapmak zorunda kalacaktır almak için: '[NSURL URLWithString: [aUrl.path stringByAppendingString: "-dizge"] @]' – Myxtic

96

:

+6

Not bu url kodlama yapar yol bileşeni dizesinin açıklaması – amleszk

+1

Bu doğru çözümdür. –

+2

Bu ayrıca dizeden önce eğik çizgi açar. –

2

, bunu kullanın:

NSURL *url = [NSURL fileURLWithPath:@"/System" isDirectory:YES]; 
NSString *filename = @"foo"; 
NSString *result = [url.path stringByAppendingPathComponent:filename]; 

Ayrıca URLByAppendingPathComponent kullanabilirsiniz ancak Bu, ihtiyaç duyulmayan fazladan bir NSURL nesnesi oluşturan fazladan bir adım ekler.

NSURL *url = [NSURL fileURLWithPath:@"/System" isDirectory:YES]; 
NSString *filename = @"foo"; 
NSURL *newURL = [url URLByAppendingPathComponent:filename]; 
NSString *result = newURL.path;