একটি CSV ফাইল কি?
.csv (কমা বিভক্ত মান) এক্সটেনশন সহ ফাইলগুলি প্লেইন টেক্সট ফাইলগুলিকে উপস্থাপন করে যেগুলিতে কমা পৃথক মান সহ ডেটার রেকর্ড রয়েছে। একটি CSV ফাইলের প্রতিটি লাইন হল ফাইলে থাকা রেকর্ডের সেট থেকে একটি নতুন রেকর্ড। এই ধরনের ফাইলগুলি তৈরি হয় যখন ডেটা স্থানান্তর এক স্টোরেজ সিস্টেম থেকে অন্য স্টোরেজের উদ্দেশ্যে করা হয়। যেহেতু সমস্ত অ্যাপ্লিকেশন কমা দ্বারা পৃথক করা রেকর্ডগুলিকে চিনতে পারে, তাই ডাটাবেসে এই ধরনের ডেটা ফাইল আমদানি খুব সুবিধাজনকভাবে করা হয়। প্রায় সমস্ত স্প্রেডশীট অ্যাপ্লিকেশন যেমন মাইক্রোসফ্ট এক্সেল বা ওপেনঅফিস ক্যালক অনেক প্রচেষ্টা ছাড়াই CSV আমদানি করতে পারে। এই ধরনের ফাইল থেকে আমদানি করা ডেটা ব্যবহারকারীর কাছে উপস্থাপনের জন্য একটি স্প্রেডশীটের ঘরে সাজানো হয়।
সংক্ষিপ্ত ইতিহাস
CSV ফাইল ফরম্যাটের উৎপত্তি এবং ইতিহাস সম্পর্কে কিছু দ্রুত তথ্য নিচে দেওয়া হল।
1972 - IBM Fortran (লেভেল H বর্ধিত) কম্পাইলার OS/360 এর অধীনে তাদের সমর্থন করেছিল
1978 - তালিকা-নির্দেশিত ইনপুট/আউটপুট FORTRAN 77 দ্বারা সমর্থিত ছিল যা সীমাবদ্ধতার জন্য কমা এবং স্পেস ব্যবহার করেছিল
2005 - CSV একটি MIME বিষয়বস্তুর প্রকার হিসাবে RFC4180 দিয়ে প্রমিত করা হয়েছিল।
2013 - RFC4180 এর ঘাটতিগুলি W3C সুপারিশ দ্বারা পরিচালিত হয়েছিল
2015 - W3C CSV-মেটাডেটা মানগুলির জন্য সুপারিশগুলির প্রথম খসড়া তৈরি করেছে, যা ডিসেম্বর 2015 এ সুপারিশ হিসাবে শুরু হয়েছিল
CSV ফাইল রূপান্তর করুন
এই ফাইলগুলি খুলতে পারে এমন অ্যাপ্লিকেশনগুলি ব্যবহার করে CSV ফাইলগুলিকে বিভিন্ন ফাইল ফর্ম্যাটে রূপান্তর করা যেতে পারে। উদাহরণস্বরূপ, Microsoft Excel CSV ফাইল বিন্যাস থেকে ডেটা আমদানি করতে পারে এবং এটিকে XLS, XLSX, PDF, TXT, XML এবং HTML ফাইল বিন্যাসে সংরক্ষণ করতে পারে। একইভাবে, অন্যান্য ডেস্কটপের পাশাপাশি অনলাইন পরিষেবাগুলি HTML, ODS এবং RTF-এ CSV ফাইলগুলি রপ্তানি করার ক্ষমতা প্রদান করে৷
CSV ফাইল ফরম্যাট
CSV ফাইল ফরম্যাট RFC4180 এর অধীনে নির্দিষ্ট করা হয়েছে বলে জানা যায়। এটি যেকোন ফাইলকে CSV অনুগত হতে সংজ্ঞায়িত করে যদি:
প্রতিটি রেকর্ড একটি পৃথক লাইনে অবস্থিত, একটি লাইন বিরতি (CRLF) দ্বারা সীমাবদ্ধ। উদাহরণ স্বরূপ:
- এএএ, বিবিবি, সিসি সিআরএলএফ
- zzz,yyy,xxx CRLF
ফাইলের শেষ রেকর্ডে শেষ লাইন বিরতি থাকতে পারে বা নাও থাকতে পারে। উদাহরণ স্বরূপ:
- এএএ, বিবিবি, সিসি সিআরএলএফ
- zzz,yyy,xxx
সাধারণ রেকর্ড লাইনের মতো একই বিন্যাস সহ ফাইলের প্রথম লাইন হিসাবে একটি ঐচ্ছিক হেডার লাইন প্রদর্শিত হতে পারে। এই শিরোলেখটিতে ফাইলের ক্ষেত্রের সাথে সম্পর্কিত নাম থাকবে এবং বাকি ফাইলের রেকর্ডগুলির মতো একই সংখ্যক ক্ষেত্র থাকা উচিত (হেডার লাইনের উপস্থিতি বা অনুপস্থিতি এটির ঐচ্ছিক “হেডার” প্যারামিটারের মাধ্যমে নির্দেশ করা উচিত MIME ধরণ). উদাহরণ স্বরূপ:
- ক্ষেত্র_নাম, ক্ষেত্র_নাম, ক্ষেত্র_নাম সিআরএলএফ
- এএএ, বিবিবি, সিসি সিআরএলএফ
- zzz,yyy,xxx CRLF
শিরোনাম এবং প্রতিটি রেকর্ডের মধ্যে, কমা দ্বারা পৃথক করা এক বা একাধিক ক্ষেত্র থাকতে পারে। প্রতিটি লাইনে ফাইল জুড়ে একই সংখ্যক ক্ষেত্র থাকা উচিত। স্থানগুলিকে একটি ক্ষেত্রের অংশ হিসাবে বিবেচনা করা হয় এবং উপেক্ষা করা উচিত নয়৷ রেকর্ডের শেষ ক্ষেত্রটি অবশ্যই কমা দ্বারা অনুসরণ করা উচিত নয়। উদাহরণ স্বরূপ:
- এএএ, বিবিবি, সিসিসি
প্রতিটি ক্ষেত্র দ্বিগুণ উদ্ধৃতিগুলিতে আবদ্ধ হতে পারে বা নাও থাকতে পারে (তবে কিছু প্রোগ্রাম, যেমন মাইক্রোসফ্ট এক্সেল, মোটেও ডবল উদ্ধৃতি ব্যবহার করে না)। যদি ক্ষেত্রগুলি ডবল উদ্ধৃতি দিয়ে আবদ্ধ না থাকে, তাহলে ক্ষেত্রগুলির ভিতরে ডবল উদ্ধৃতিগুলি উপস্থিত নাও হতে পারে৷ উদাহরণ স্বরূপ:\
- aaa,bbb,ccc CRLF
- zzz,yyy,xxx
লাইন ব্রেক (CRLF), ডবল কোটস এবং কমা সম্বলিত ক্ষেত্রগুলিকে ডবল-উদ্ধৃতিতে আবদ্ধ করা উচিত। উদাহরণ স্বরূপ:
- aaa,b CRLF
- bb,ccc CRLF
- zzz,yyy,xxx
যদি ডবল-উদ্ধৃতিগুলি ক্ষেত্রগুলিকে আবদ্ধ করার জন্য ব্যবহার করা হয়, তাহলে একটি ক্ষেত্রের ভিতরে প্রদর্শিত একটি ডবল-উদ্ধৃতি অন্য একটি দ্বিগুণ উদ্ধৃতি দিয়ে পূর্বে এস্কেপ করতে হবে। উদাহরণ স্বরূপ:
- aaa,bbb,ccc
যাইহোক, আধুনিক ব্যবহারের আলোকে, ডিলিমিটার শুধুমাত্র কমাতে সীমাবদ্ধ নয় এবং সেমিকোলন, ট্যাব বা স্পেসও হতে পারে। মাইক্রোসফ্ট এক্সেলের মতো অ্যাপ্লিকেশনগুলি একটি CSV ফাইল থেকে রেকর্ড আমদানি করার জন্য বিভেদক অক্ষর নির্দিষ্ট করার বিকল্প প্রদান করে।