पर्ल में फाइलहैंडल मॉड्यूल

Parla Mem Pha Ilahaindala Modyula



पर्ल में फ़ाइलें बनाने और उन तक पहुंचने के कई तरीके मौजूद हैं। फ़ाइल हैंडलर का उपयोग करके पर्ल में पढ़ने, लिखने या अपडेट करने के लिए एक फ़ाइल खोली जा सकती है। फ़ाइल हैंडलर का उपयोग संरचित प्रोग्रामिंग प्रारूप या ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग प्रारूप में ओपन() विधि में किया जा सकता है। फ़ाइलहैंडल मॉड्यूल का उपयोग पर्ल में फ़ाइल हैंडलर को एक ऑब्जेक्ट के रूप में घोषित करने के लिए किया जा सकता है और 'फ़ाइलहैंडल' वर्ग के विभिन्न गुणों और विधियों का उपयोग करके फ़ाइल बनाने या एक्सेस करने के लिए फ़ाइल खोलने के लिए इस ऑब्जेक्ट का उपयोग किया जा सकता है। फ़ाइलहैंडल मॉड्यूल के कुछ सामान्य तरीकों का उपयोग और पर्ल में फ़ाइल के साथ काम करने के लिए फ़ाइलहैंडल मॉड्यूल का उपयोग करने के तरीके इस ट्यूटोरियल में दिखाए गए हैं।

FileHandle के कुछ उपयोगी तरीके

फ़ाइलहैंडल मॉड्यूल की कुछ सामान्य रूप से उपयोग की जाने वाली विधियाँ इस प्रकार हैं:

तरीका उद्देश्य
कहना इसका उपयोग फ़ाइल के आकार को बाइट्स में गिनने के लिए किया जाता है।
जीइ टीसी इसका उपयोग फ़ाइल सामग्री के प्रत्येक अक्षर को पढ़ने के लिए किया जाता है।
तलाश इसका उपयोग फ़ाइल पॉइंटर को किसी विशेष स्थान पर ले जाने के लिए किया जाता है।
ईओएफ यह फ़ाइल के अंत को इंगित करता है.
बंद करना इसका उपयोग पहले से परिभाषित फ़ाइल हैंडलर को बंद करने के लिए किया जाता है।

पर्ल फ़ाइलहैंडल के उदाहरण

ट्यूटोरियल के इस भाग में कई उदाहरणों का उपयोग करके फ़ाइलहैंडल मॉड्यूल के विभिन्न उपयोग दिखाए गए हैं।







उदाहरण 1: एक नई फ़ाइल बनाएँ

निम्नलिखित स्क्रिप्ट के साथ एक पर्ल फ़ाइल बनाएं जो फ़ाइलहैंडल मॉड्यूल का उपयोग करके एक नई फ़ाइल बनाती है। उपयोगकर्ता से एक फ़ाइल नाम लिया जाता है और जाँचा जाता है कि यह मौजूद है या नहीं। यदि फ़ाइल मौजूद नहीं है, तो 1 सेकंड प्रतीक्षा करने के बाद फ़ाइल को 'फ़ाइलहैंडल' वर्ग का ऑब्जेक्ट बनाकर लिखने के लिए खोला जाता है।



#!/usr/bin/perl

सख्त उपयोग करें ;
उपयोग चेतावनियाँ ;
5.34.0 का उपयोग करें ;
फ़ाइलहैंडल का उपयोग करें ;

#बनाने के लिए उपयोगकर्ता से फ़ाइल नाम लें
छपाई 'फ़ाइल नाम दर्ज करें:' ;
मेरा $f = <>;
चॉम्प ( $फ ) ;

#जांचें कि फ़ाइल पहले से मौजूद है या नहीं
अगर ( -ई$फ )
{
#यदि फ़ाइल मौजूद है तो एक संदेश प्रिंट करें
कहना 'फ़ाइल पहले से ही मौजूद है।' ;
}

अन्य

{
# फ़ाइल हैंडलर ऑब्जेक्ट बनाएं
मेरा $FileHandler = फाइलहैंडल- > नया ;
कहना 'फ़ाइल में लिख रहा हूँ...' ;
#1 सेकंड रुकें
नींद ( 1 ) ;

#लिखने के लिए फ़ाइल खोलें
अगर ( $फ़ाइलहैंडलर- > खुला ( '> $f' ) )
{
#फ़ाइल में पाठ की एक पंक्ति लिखें
छपाई $फ़ाइलहैंडलर 'यह एक परीक्षण संदेश है. \एन यह दूसरी पंक्ति है. \एन ' ;
#फ़ाइल हैंडलर बंद करें
$फ़ाइलहैंडलर- > बंद करना ;
}

}

आउटपुट:



आउटपुट के अनुसार, 'test.txt' फ़ाइल पहले मौजूद नहीं थी और यह फ़ाइल टेक्स्ट की दो पंक्तियों के साथ बनाई गई है। फिर, यह जांचने के लिए 'कैट' कमांड निष्पादित किया जाता है कि फ़ाइल सामग्री के साथ सफलतापूर्वक बनाई गई है या नहीं:





  पी1-1

स्क्रिप्ट को उसी इनपुट मान के साथ फिर से निष्पादित किया जाता है और 'फ़ाइल पहले से मौजूद है' संदेश यहां मुद्रित किया जाता है क्योंकि 'test.txt' फ़ाइल पहले बनाई गई है।



  पी1-2

उदाहरण 2: फ़ाइल की सामग्री पढ़ें

निम्नलिखित स्क्रिप्ट के साथ एक पर्ल फ़ाइल बनाएं जो फ़ाइल मौजूद होने पर 'फ़ाइलहैंडल' क्लास का उपयोग करके फ़ाइल की सामग्री को पढ़ती है। फ़ाइल नाम उपयोगकर्ता से लिया गया है.

#!/usr/bin/perl

सख्त उपयोग करें ;
उपयोग चेतावनियाँ ;
5.34.0 का उपयोग करें ;
फ़ाइलहैंडल का उपयोग करें ;

#बनाने के लिए उपयोगकर्ता से फ़ाइल नाम लें
मेरा $f = <>;
मेरा $f = ;
चॉम्प ( $फ ) ;

#जांचें कि फ़ाइल पहले से मौजूद है या नहीं
अगर ( -ई$फ )
{
#पढ़ने के लिए फ़ाइल खोलें
मेरा $FileHandler = फाइलहैंडल- > नया ( ' <$एफ' ) ;
#फ़ाइल सामग्री प्रिंट करें
छपाई < $फ़ाइलहैंडलर >;
#फ़ाइल हैंडलर बंद करें
$फ़ाइलहैंडलर बंद करें ;
}

आउटपुट:

'test.txt' फ़ाइल की सामग्री आउटपुट में मुद्रित होती है क्योंकि यह वर्तमान स्थान पर मौजूद है:

  पी2

उदाहरण 3: किसी सामग्री को फ़ाइल में जोड़ें

निम्नलिखित स्क्रिप्ट के साथ एक पर्ल फ़ाइल बनाएं जो सामग्री को एक गैर-रिक्त फ़ाइल में जोड़ती है और फ़ाइल का आकार बाइट्स में प्रिंट करती है। फ़ाइल नाम उपयोगकर्ता से लिया गया है. यदि फ़ाइल मौजूद है और उसमें डेटा है, तो फ़ाइल के अंत में पाठ की एक पंक्ति जोड़ दी जाती है। अन्यथा, एक संदेश मुद्रित होता है.

#!/usr/bin/perl

सख्त उपयोग करें ;
उपयोग चेतावनियाँ ;
5.34.0 का उपयोग करें ;
फ़ाइलहैंडल का उपयोग करें ;

#बनाने के लिए उपयोगकर्ता से फ़ाइल नाम लें
छपाई 'फ़ाइल नाम दर्ज करें:' ;
मेरा $f = <>;
चॉम्प ( $फ ) ;

#जांचें कि फ़ाइल पहले से मौजूद है और खाली नहीं है या नहीं
अगर ( -स$फ )
{


मेरा $FileHandler = फाइलहैंडल- > नया ( '>>$f' ) ;
#फ़ाइल का आकार प्रिंट करें
छपाई 'फ़ाइल का आकार है' . $फ़ाइलहैंडलर- > कहना। 'बाइट्स. \एन ' ;
कहना 'सामग्री को फ़ाइल में जोड़ा जा रहा है...' ;
#1 सेकंड रुकें
नींद ( 1 ) ;

#फ़ाइल के अंत में सामग्री लिखें
छपाई $फ़ाइलहैंडलर 'यह एक नई लाइन है. \एन ' ;
#फ़ाइल हैंडलर बंद करें
$फ़ाइलहैंडलर- > बंद करना ;
}
अन्य
{
कहना 'फ़ाइल मौजूद नहीं है।' ;
}

आउटपुट:

आउटपुट के अनुसार, 'test.txt' फ़ाइल में एक नई लाइन जोड़ी गई है और फ़ाइल का आकार 45 बाइट्स है। फिर, यह जांचने के लिए 'कैट' कमांड निष्पादित किया जाता है कि सामग्री फ़ाइल में ठीक से जोड़ी गई है या नहीं:

  पी3-1

निष्कर्ष


फाइलहैंडल मॉड्यूल फाइलों को पढ़ने, लिखने या जोड़ने के लिए पर्ल के विकल्पों में से एक है। इस मॉड्यूल के तीन अलग-अलग उपयोग इस ट्यूटोरियल में सरल उदाहरणों का उपयोग करके दिखाए गए हैं।