के साथ सीएसवी हेडर प्रिंट करें मैंने एक सीएसवी फ़ाइल में डेटा का एक गुच्छा संसाधित करने के लिए टाई :: हैंडल :: सीएसवी का उपयोग करके एक पर्ल स्क्रिप्ट लिखी है और केवल एक नई सीएसवी फ़ाइल में मुझे जो चाहिए उसे प्रिंट करें। अभी, मैं तो बस द्वारा फ़ील्ड नाम के सभी के साथ शीर्ष लेख पंक्ति प्रिंट आउट एक यह हार्डकोड में तो जैसे:टाई :: हैंडल :: सीएसवी
print '"TERM", "STUDENT ID", "NAME", ..."'."\n";
मुझे लगता है यह ऐसा करने का एक गूंगा तरीका है, लेकिन मैं कैसे करने के लिए पता नहीं है टाई :: हैंडल :: सीएसवी ऑब्जेक्ट के भीतर से हेडर तक पहुंच प्राप्त करें। यह है, तो जैसे instantiated है
my $fh = Tie::Handle::CSV->new($file,header=> 1);
और डेटा तो जैसे एक्सेस किया जाता है,
$line -> {'CATALOG_NBR'}
मुझे पता है कि यह कैसे उपयोग करते हुए शीर्ष लेख मुद्रित करने के लिए पता करने के लिए यह एक हैश संदर्भ है पर्याप्त है, लेकिन पर्याप्त नहीं पता इसे हार्डकोडिंग के बजाए। जाहिर है, "वे" आमतौर पर प्रत्येक शब्द को फिर से काम करने के बाद स्क्रिप्ट प्राप्त करने के बाद सटीक कॉलम नाम बदलते हैं और ऑर्डर करते हैं।
किसी भी मदद के लिए बहुत बहुत धन्यवाद! जेए
धन्यवाद दोस्तों - मैं अनिवार्य रूप से आपकी सलाह का संयोजन कर रहा हूं। मैंने दो फाइल हैंडल खोले - दूसरा $ $ hfh हेडर => 0 के साथ, इसलिए मैं हेडर लेबल्स को सही क्रम में प्रिंट कर सकता था: मेरा $ fh = टाई :: हैंडल :: सीएसवी-> नया ($ फ़ाइल , हेडर => 1); मेरा $ एचएफएच = टाई :: हैंडल :: सीएसवी-> नया ($ फ़ाइल, हेडर => 0); मेरी $ line = <$hfh>; मेरा $ हेडर; foreach (@ {$ line}) { $ हेडर। = "\" $ _ \ ","; } प्रिंट "$ शीर्षलेख \ n"; आपकी सहायता के लिए फिर से धन्यवाद! – Jason