2012-06-05 12 views
5

मेरे पास एक यूआरएल है: www.gmail.com/index.php। मेरे पास तीन अलग-अलग तार भी हैं aa, bb और cc। मैं उद्देश्य सी में संयुक्त यूआरएल प्राप्त करने के लिए तीन अलग-अलग तारों को यूआरएल में जोड़ना चाहता हूं। मैं www.gmail.com/index.php/aa/bb/cc चाहता हूं। क्या कोई मेरी मदद कर सकता है ?? मैं उद्देश्य सी के लिए नया हूँ धन्यवाद।पथ में घटकों को जोड़ना - उद्देश्य सी

+0

क्या आपका मतलब है 'http: // www.gmail.com/index.php'? 'www.gmail.com/index.php' एक यूआरएल नहीं है। – gaige

उत्तर

13

आप को पुन: प्राप्त डेटा, आदि में बाद में उपयोग के लिए एक URL का उपयोग करने की कोशिश कर रहे हैं, तो आप एक NSURL वस्तु चाहते हैं कि आपका कार्य पूर्ण होने जा रहे हैं। आप निश्चित रूप से अगले तत्व के साथ "/% @" जोड़कर एक URL बना सकते हैं @, लेकिन आप निम्न कार्य पर गौर करना चाहिए:

NSURL *originalURL = [NSURL URLWithString: @"http://www.gmail.com/"]; 
NSURL *aaNextURL = [originalURL URLByAppendingPathComponent: @"aa"]; 
NSURL *bbNextURL = [aaNextURL URLByAppendingPathComponent: @"bb"]; 
NSURL *ccNextURL = [bbNextURL URLByAppendingPathComponent: @"cc"]; 

इसमें कुछ समय घना यदि आप स्थिर पथ तत्वों को जोड़ने रहे हैं, लेकिन यदि आप गणना की गई जानकारी जोड़ रहे हैं तो यह सुनिश्चित करने की समस्या हल करती है कि उपयुक्त स्लेश हैं और आपको सीधे यूआरएल निर्माण का उपयोग करने की अनुमति मिलती है।

+2

अंतिम पंक्ति शायद पढ़ी जानी चाहिए: 'NSURL * ccNextURL = [bbNextURL URLByAppendingPathComponent: @ "cc"]; ' – Thompsonian

+0

हाँ, धन्यवाद। तय की। – gaige

7

उपयोग stringByAppendingPathComponent

संबंधित मुद्दे