2010-05-28 7 views
5

मैं यहाँ नया हूँ का उपयोग करके मेरा कार्यक्रम में गलत, मैं इस ... कैसे उपयोग करने के लिए पता नहीं है यहाँ मेरे कोड है:कुछ GData xmlsupport

NSString *[email protected]"url"; 
NSURL *urlParse=[NSURL URLWithString:strParse]; 
NSString *content=[[NSString alloc] initWithContentsOfURL:urlParse]; 
NSError *error; 
GDataXMLDocument *document=[[GDataXMLDocument alloc] initWithXMLString:content options:0 error:&error]; 

-------- -------------- xml -----

<?xml version="1.0" encoding="UTF-8"?> 
<root> 
<head> 
<version>20100514103110</version> 
</head> 
<channels> 
<channel> 
<id>1</id> 
<name> 
<![CDATA[]]> 
</name> 
<uuid> 
<![CDATA[21001]]> 
</uuid> 
<site_url> 
<![CDATA[http://]]> 
</site_url> 
<pics> 
<url> 
<![CDATA[/21001/cms_images/channel/2010-01/21/channel_51224251664216081527429.png]]> 
</url> 
<url> 
<![CDATA[/21001/cms_images/channel/2010-01/21/channel_82864703356323359638124.png]]> 
</url> 
<url> 
<![CDATA[/21001/cms_images/channel/2008-07/04/channel_67535050807177704592393.swf]]> 
</url> 
<url> 
<![CDATA[]]> 
</url> 
<url> 
<![CDATA[]]> 
</url> 
</pics> 
<linkurls> 
<url> 
<![CDATA[]]> 
</url> 
<url> 
<![CDATA[]]> 
</url> 
<url> 
<![CDATA[]]> 
</url> 
</linkurls> 
<description> 
<![CDATA[]]> 
</description> 
<provider> 
<![CDATA[]]> 
</provider> 
<attr>3</attr> 
<props> 
<prop1> 
<![CDATA[21001/movie_shell.swf]]> 
</prop1> 
<prop2> 
<![CDATA[]]> 
</prop2> 
<prop3> 
<![CDATA[]]> 
</prop3> 
<prop4> 
<![CDATA[]]> 
</prop4> 
<prop5> 
<![CDATA[]]> 
</prop5> 
</props> 
</channel> 
</channels> 
</root> 

---------- नीचे त्रुटि ----------- ----

Ld build/Debug-iphonesimulator/newParser.app/newParser normal i386 
    cd /Users/apple/Desktop/newParser 
    setenv MACOSX_DEPLOYMENT_TARGET 10.5 
    setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.1.sdk -L/Users/apple/Desktop/newParser/build/Debug-iphonesimulator -F/Users/apple/Desktop/newParser/build/Debug-iphonesimulator -filelist /Users/apple/Desktop/newParser/build/newParser.build/Debug-iphonesimulator/newParser.build/Objects-normal/i386/newParser.LinkFileList -mmacosx-version-min=10.5 -lxml2 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/apple/Desktop/newParser/build/Debug-iphonesimulator/newParser.app/newParser 

    Undefined symbols: 
     "_kGDataXMLXPathDefaultNamespacePrefix", referenced from: 
      _kGDataXMLXPathDefaultNamespacePrefix$non_lazy_ptr in GDataXMLNode.o 
     (maybe you meant: _kGDataXMLXPathDefaultNamespacePrefix$non_lazy_ptr) 
    ld: symbol(s) not found 
    collect2: ld returned 1 exit status 
+0

पोस्ट XML पार्सिंग कोड है कि आप प्रयोग कर रहे हैं और एक्सएमएल इसके खिलाफ इस्तेमाल किया जा रहा है। – Anurag

+0

सहायता ~~~~~~~~~~~~~~~~~ – ben

+1

शुरुआत के लिए, आपके द्वारा पोस्ट किया गया एक्सएमएल अवैध है। यहां देखें - http://validator.w3.org/#validate_by_input – Anurag

उत्तर

11

निकालें #import "GDataXMLNode.h" precompiled शीर्ष लेख से (और ज फाइलों से शामिल वें ere) और इसे केवल कार्यान्वयन फाइलों में जोड़ें जहां आवश्यक हो।

+0

यह है! धन्यवाद ~ – ben

+1

यह सिर्फ मेरी जान बचाई। पृथ्वी पर कैसे आता है आप जानते हैं कि आपको पीडी में GDataXMLNode.h आयात नहीं करना चाहिए ?? कोई बात नहीं धन्यवाद!! – Toastor

+0

मुझे एक ही समस्या है, लेकिन इस तरह से कोई सफलता नहीं मिली है। कृपया मुझे कुछ मार्गदर्शन दें। – Raj

8

वैकल्पिक रूप से, आप केवल प्रतीक को परिभाषित कर सकते हैं। परिवर्तन:

_EXTERN const char* kGDataXMLXPathDefaultNamespacePrefix _INITIALIZE_AS("_def_ns"); 

की तरह कुछ करने के लिए:

#define kGDataXMLXPathDefaultNamespacePrefix ("_def_ns"); 

वे मूल बयान में पूर्वप्रक्रमक प्रवंचना का एक सा प्रयोग कर रहे हैं, लेकिन जहाँ तक मैं देख सकता हूँ, यह कोई समस्याओं का कारण बनता है और आप की अनुमति देगा अपने .pch में GDataXMLNode.h आयात करने के लिए, जो बहुत आसान है यदि आप इसे अक्सर उपयोग कर रहे हैं - जैसा कि मैं हूं!

बेशक

, सुनिश्चित करें कि आप यह भी आप के लिए ठीक काम करता है का परीक्षण कर

+0

धन्यवाद, .p में .h में एक .h में .h में एक .h gdataXMLNode का संदर्भ दे रहा था, यह सब कुछ रिफैक्टर करने से बेहतर समाधान है। – marimba

+0

धन्यवाद, itsthejb। यह काम करता हैं। –