কিভাবে পাইথনে বাইনারি ফাইল পড়বেন

How Read Binary Files Python



যে ফাইলটিতে বাইনারি ডেটা থাকে তাকে বাইনারি ফাইল বলে। যেকোনো ফরম্যাট করা বা বিন্যাসহীন বাইনারি ডেটা বাইনারি ফাইলে সংরক্ষিত থাকে এবং এই ফাইলটি মানুষের পঠনযোগ্য নয় এবং সরাসরি কম্পিউটার ব্যবহার করে। যখন একটি বাইনারি ফাইল পড়ার বা এক স্থান থেকে অন্য স্থানে স্থানান্তরের প্রয়োজন হয়, তখন ফাইলের বিষয়বস্তু মানব-পাঠযোগ্য বিন্যাসে রূপান্তরিত বা এনকোড করা হয়। বাইনারি ফাইলের এক্সটেনশন হল .bin। একটি অন্তর্নির্মিত ফাংশন বা মডিউল ব্যবহার করে বাইনারি ফাইলের বিষয়বস্তু পড়া যায়। পাইথনে বাইনারি ফাইল পড়ার বিভিন্ন উপায় এই টিউটোরিয়ালে দেখানো হয়েছে।

পূর্ব প্রয়োজনীয়তা:

এই টিউটোরিয়ালের উদাহরণগুলি পরীক্ষা করার আগে, উদাহরণ স্ক্রিপ্টে ব্যবহার করার জন্য এক বা একাধিক বাইনারি ফাইল তৈরি করা ভাল। দুটি বাইনারি ফাইল তৈরির জন্য দুটি পাইথন ফাইলের স্ক্রিপ্ট নিচে দেওয়া হয়েছে। Binary1.py নামে একটি বাইনারি ফাইল তৈরি করবে string.bin এতে স্ট্রিং ডেটা থাকবে এবং binary2.py নামের একটি বাইনারি ফাইল তৈরি করবে number_list.bin যাতে সংখ্যাসূচক তথ্যের একটি তালিকা থাকবে।







Binary1.py

# একটি বাইনারি ফাইল তৈরি করতে একটি ফাইল হ্যান্ডলার খুলুন

ফাইল_হ্যান্ডলার= খোলা('string.bin', 'wb')

# বাইনারি ফাইলে দুটি লাইন পাঠ্য যুক্ত করুন

ফাইল_হ্যান্ডলার।লিখুন('LinuxHint এ স্বাগতম।nপাইথন প্রোগ্রামিং শিখুন। ')

# ফাইল হ্যান্ডলার বন্ধ করুন

ফাইল_হ্যান্ডলার।বন্ধ()

Binary2.py

# একটি বাইনারি ফাইল তৈরি করতে একটি ফাইল হ্যান্ডলার খুলুন

ফাইল=খোলা('number_list.bin','wb')

# সংখ্যাসূচক মানের একটি তালিকা ঘোষণা করুন

সংখ্যা=[10,30,চার পাঁচ,60,70,.৫,99]

# তালিকাটিকে অ্যারে রূপান্তর করুন

ব্যারে=বাইট্রে(সংখ্যা)

# ফাইলে অ্যারে লিখুন

ফাইললিখুন(ব্যারে)

ফাইলবন্ধ()

উদাহরণ -1: বাইট অ্যারেতে স্ট্রিং ডেটার বাইনারি ফাইল পড়ুন

বাইনারি ফাইল পড়ার জন্য পাইথনে অনেক উপায় বিদ্যমান। আপনি এক সময়ে বাইটের নির্দিষ্ট সংখ্যা বা বাইনারি ফাইলের সম্পূর্ণ বিষয়বস্তু পড়তে পারেন। নিম্নলিখিত স্ক্রিপ্ট দিয়ে একটি পাইথন ফাইল তৈরি করুন। দ্য open () ফাংশন খুলতে ব্যবহার করেছে string.bin পড়ার জন্য. দ্য পড়া () ফাংশন while লুপ এবং মুদ্রণের প্রতিটি পুনরাবৃত্তিতে ফাইল থেকে 7 টি অক্ষর পড়তে ব্যবহৃত হয়েছে। পরবর্তী, পড়া () ফাংশন বাইনারি ফাইলের সম্পূর্ণ বিষয়বস্তু পড়ার জন্য কোন যুক্তি ছাড়াই ব্যবহার করা হয়েছে যা পরে মুদ্রিত হবে।



# পড়ার জন্য বাইনারি ফাইল খুলুন

ফাইল_হ্যান্ডলার= খোলা('string.bin', 'আরবি')

# বাইনারি ফাইল থেকে প্রথম তিনটি বাইট পড়ুন

data_byte=ফাইল_হ্যান্ডলার।পড়ুন(7)

ছাপা('প্রতিটি পুনরাবৃত্তিতে তিনটি অক্ষর মুদ্রণ করুন:')

# ফাইলের বাকি অংশ পড়তে লুপটি ইটারেট করুন

যখনdata_byte:

ছাপা(data_byte)

data_byte=ফাইল_হ্যান্ডলার।পড়ুন(7)


# একটি বাইট স্ট্রিং হিসাবে পুরো ফাইলটি পড়ুন

সঙ্গে খোলা('string.bin', 'আরবি') হিসাবেfh:

বিষয়বস্তু=fhপড়ুন()

ছাপা('বাইনারি ফাইলের সম্পূর্ণ বিষয়বস্তু মুদ্রণ করুন:')

ছাপা(বিষয়বস্তু)

আউটপুট:

উপরের স্ক্রিপ্টটি চালানোর পর নিম্নলিখিত আউটপুটটি প্রদর্শিত হবে।







উদাহরণ -২: অ্যারেতে স্ট্রিং ডেটার বাইনারি ফাইল পড়ুন

নামের একটি বাইনারি ফাইল পড়তে নিম্নলিখিত স্ক্রিপ্ট সহ একটি পাইথন ফাইল তৈরি করুন number_list.bin আগে তৈরি। এই বাইনারি ফাইলে সংখ্যাসূচক তথ্যের একটি তালিকা রয়েছে। আগের উদাহরণের মত, open () ফাংশন স্ক্রিপ্টে পড়ার জন্য বাইনারি ফাইল খুলতে ব্যবহার করেছে। পরবর্তী, প্রথম 5 টি সংখ্যা বাইনারি ফাইল থেকে পড়বে এবং মুদ্রণের আগে একটি তালিকায় রূপান্তরিত হবে।

# পড়ার জন্য বাইনারি ফাইল খুলুন

ফাইল = খোলা('number_list.bin', 'আরবি')

# তালিকায় প্রথম পাঁচটি সংখ্যা পড়ুন

সংখ্যা= তালিকা(ফাইলপড়ুন(5))

# তালিকা প্রিন্ট করুন

ছাপা(সংখ্যা)

# ফাইলটি বন্ধ করুন

ফাইলবন্ধ()

আউটপুট:

উপরের স্ক্রিপ্টটি চালানোর পর নিম্নলিখিত আউটপুটটি প্রদর্শিত হবে। বাইনারি ফাইলটিতে 7 টি সংখ্যা রয়েছে এবং প্রথম পাঁচটি সংখ্যা আউটপুটে মুদ্রিত হয়েছে।



উদাহরণ-3: NumPy ব্যবহার করে বাইনারি ফাইল পড়ুন

ব্যবহার করে বাইনারি ফাইল তৈরির উপায় NumPy অ্যারে এবং বাইনারি ফাইলের বিষয়বস্তু ব্যবহার করে একটি তালিকা ব্যবহার করে NumPy মডিউল টিউটোরিয়ালের এই অংশে দেখানো হয়েছে। নীচে দেওয়া স্ক্রিপ্টটি পরীক্ষা করার আগে, আপনাকে এটি ইনস্টল করতে হবে NumPy মডিউল টার্মিনাল থেকে কমান্ড এক্সিকিউট করে অথবা NumPy প্যাকেজ পাইথন এডিটরে, যেখানে স্ক্রিপ্টটি কার্যকর করা হবে। দ্য tofile () ফাংশন একটি পাঠ্য বা বাইনারি ফাইল তৈরি করতে ব্যবহৃত হয়, এবং fromfile () ফাংশন একটি পাঠ্য বা বাইনারি ফাইল পড়ে একটি অ্যারে তৈরি করতে ব্যবহৃত হয়।

টফাইলের সিনট্যাক্স ():

ndarray।নথিতে(ফাইল,সেপ্টেম্বর='',বিন্যাস='%s')

প্রথম যুক্তিটি বাধ্যতামূলক এবং ফাইলের নাম বা স্ট্রিং বা পাথকে একটি মান হিসাবে গ্রহণ করে। এই যুক্তিতে একটি ফাইলের নাম দেওয়া হলে ফাইল তৈরি করা হবে। দ্বিতীয় যুক্তিটি alচ্ছিক যা অ্যারে উপাদানগুলিকে পৃথক করতে ব্যবহৃত হয়। তৃতীয় যুক্তিটি alচ্ছিক এবং টেক্সট ফাইলের আউটপুট ফরম্যাট করার জন্য ব্যবহৃত হয়।

ফোমফাইলের সিনট্যাক্স ():

অসাড়ফাইল থেকে(ফাইল,dtype=ভাসা,গণনা=-,সেপ্টেম্বর='',অফসেট=0,*,মত=কোনটিই নয়)

প্রথম যুক্তিটি বাধ্যতামূলক এবং ফাইলের নাম বা স্ট্রিং বা পাথকে একটি মান হিসাবে গ্রহণ করে। এই যুক্তিতে একটি ফাইলের নাম দেওয়া হলে ফাইলের বিষয়বস্তু পড়া হবে। দ্য dtype ফেরত অ্যারের ডেটা টাইপ সংজ্ঞায়িত করে। গণনা আইটেমের সংখ্যা গণনা করতে ব্যবহৃত হয়। এর উদ্দেশ্য সেপ্টেম্বর টেক্সট বা অ্যারে আইটেম আলাদা করা। অফসেটটি ফাইলের বর্তমান অবস্থান নির্ধারণ করতে ব্যবহৃত হয়। শেষ যুক্তিটি একটি অ্যারে বস্তু তৈরি করতে ব্যবহৃত হয় যা a নয় NumPy অ্যারে

একটি বাইনারি ফাইল ব্যবহার করে নিম্নলিখিত স্ক্রিপ্ট দিয়ে একটি পাইথন ফাইল তৈরি করুন NumPy অ্যারে এবং বাইনারি ফাইলের বিষয়বস্তু পড়ুন এবং মুদ্রণ করুন।

# NumPy মডিউল আমদানি করুন

আমদানিঅসাড়হিসাবেযেমন

# অস্পষ্ট অ্যারে ঘোষণা করুন

nparray=যেমনঅ্যারে([3. 4, 89, 30, চার পাঁচ, .০, এগারো])

# Numpy অ্যারে থেকে বাইনারি ফাইল তৈরি করুন

nparray।নথিতে('list.bin')

# বাইনারি ফাইল থেকে ডেটা প্রিন্ট করুন

ছাপা(যেমনফাইল থেকে('list.bin',dtype=যেমনint64))

আউটপুট:

উপরের স্ক্রিপ্টটি চালানোর পর নিম্নলিখিত আউটপুটটি প্রদর্শিত হবে।

উপসংহার:

বাইনারি ফাইল পড়ার তিনটি ভিন্ন উপায় সহজ উদাহরণ ব্যবহার করে এই টিউটোরিয়ালে দেখানো হয়েছে। প্রথম উদাহরণ একটি বাইট অ্যারে হিসাবে বাইনারি ফাইলের বিষয়বস্তু ফেরত দিয়েছে। দ্বিতীয় উদাহরণ একটি তালিকা হিসাবে বাইনারি ফাইলের বিষয়বস্তু ফেরত দিয়েছে। শেষ উদাহরণটি একটি তালিকা হিসাবে বাইনারি ফাইলের বিষয়বস্তুও ফেরত দিয়েছে।