আমি .csv ফাইলের ডিরেক্টরিটিকে দ্রুত .xls বা .xlsx ফর্ম্যাটে রূপান্তর করার জন্য একটি উপায় খুঁজছি (যদি আমি / অথবা না করতে পারি তবে ভাল হবে)।
এটি করার কোনও সহজ উপায় আছে বা তৃতীয় পক্ষের প্রোগ্রাম ইনস্টল করার দরকার আছে কি?
আমি .csv ফাইলের ডিরেক্টরিটিকে দ্রুত .xls বা .xlsx ফর্ম্যাটে রূপান্তর করার জন্য একটি উপায় খুঁজছি (যদি আমি / অথবা না করতে পারি তবে ভাল হবে)।
এটি করার কোনও সহজ উপায় আছে বা তৃতীয় পক্ষের প্রোগ্রাম ইনস্টল করার দরকার আছে কি?
উত্তর:
ধরে নিচ্ছি আপনার পাইথন রয়েছে এবং পাইথন রয়েছে (কোনও কারণে), আপনি এই স্ক্রিপ্টটি ব্যবহার করতে পারলাম আমি বেত্রাঘাত:
import os
import glob
import csv
import xlwt # from http://www.python-excel.org/
for csvfile in glob.glob(os.path.join('.', '*.csv')):
wb = xlwt.Workbook()
ws = wb.add_sheet('data')
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, val in enumerate(row):
ws.write(r, c, val)
wb.save(csvfile + '.xls')
সমস্ত সিএসভি ফাইল সহ ডিরেক্টরিতে দৌড়ান, এটি তাদের সমস্তকে রূপান্তরিত করবে এবং একটি ".xls" টিপবে।
এক্সেল 2007+ (xlsx ফাইল) এর জন্য প্রায় 1 টি মরোজ সমর্থন করে:
import os
import glob
import csv
import openpyxl # from https://pythonhosted.org/openpyxl/ or PyPI (e.g. via pip)
for csvfile in glob.glob(os.path.join('.', '*.csv')):
wb = openpyxl.Workbook()
ws = wb.active
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader, start=1):
for c, val in enumerate(row, start=1):
ws.cell(row=r, column=c).value = val
wb.save(csvfile + '.xlsx')
আপনার প্রশ্নে অনেক অপরিশোধিত রয়েছে।
ধরে নিচ্ছি যে আপনার সিভিএস ফাইলগুলি অনুরূপ ডিরেক্টরি কাঠামোতে রয়েছে
c:\randompath\CSV\
a.csv
b.csv
c.csv
:
:
z.csv
এবং আপনি শেষ করতে চান
c:\randompath\XLS\
a.xls
b.xls
c.xls
:
:
z.xls
আপনি করতে ইচ্ছুক ক্লিন-আপ কাজের আপফ্রন্ট কাজের অনুপাতের উপর নির্ভর করে আমি যেতে তিনটি রুটের কথা ভাবতে পারি।
দ্রষ্টব্য যে আমি এই জিনিসগুলি করার জন্য কোনও কোড লিখি নি (এখনও) আমি কেবল একটি প্রাথমিক পয়েন্টের জন্য আইডিয়া দিচ্ছি। আপনি যদি চান তা সম্পর্কে আরও বিশদ দিতে পারলে আমার বা ফোরামের কোনও সদস্যের কাছ থেকে কীভাবে যোগাযোগ করা যায় তার জন্য আপনি আরও বিস্তারিত ব্যাখ্যা পেতে পারেন।
উইন্ডোজের জন্য? কুল ইউটিলস " টোটাল সিএসভি রূপান্তরকারী " কমান্ড লাইন সংস্করণটি জেএসএন , অ্যাক্সেস, ডিবিএফ, এক্সএমএল এবং এসকিউএল সহ অনেকগুলি আউটপুট ফর্ম্যাটগুলিকে সমর্থন করে এবং এটি কেবলমাত্র 40 ডলার। এটি উপ-ডিরেক্টরিগুলি পুনরাবৃত্তি করতে পারে, মূল সিএসভি ফাইলগুলি মুছতে পারে, সমস্ত ফাইলকে একটি নথিতে একত্রিত করতে পারে এবং আরও অনেক কিছু করতে পারে।
http://www.coolutils.com/TotalCSVConverter
CSVConverter.exe <source> <destination> <options>
" অ্যাডভান্সড সিএসভি রূপান্তরকারী " ($ 40-200) একটি বহনযোগ্য EXE যা দ্রুত এবং এক্সেল ইনস্টল না করেই এটি করতে পারে।
http://www.dbf2002.com/csv-converter/commandline.html
"c:\Program Files\CSV Converter\csvcnv.exe" c:\base\*.csv c:\exports\ /TOXLSX /SRCHDR
সফটইনটারফেসের " কনভার্ট এক্সএলএস " এক্সেল ব্যবহার করতে পারে (তবে প্রয়োজন হয় না) এবং এটি আরও ব্যয়বহুল ($ 500 +) করে তবে আরও ফর্ম্যাট সমর্থন করে এবং আরও বিকল্প রয়েছে।
http://www.softinterface.com/Convert-XLS/Convert-XLS.htm
"c:\Program Files (x86)\Softinterface, Inc\Convert XLS\ConvertXLS.exe" /V /S"c:\base\*.csv" /T"c:\exports\*.xlsx" /F6 /C51 /M2
" জ্ঞানুমারিক " একটি ওপেন-সোর্স স্প্রেডশিট প্রোগ্রাম যা সরাসরি রূপান্তর সম্পাদন করতে পারে তবে উইন্ডোজের জন্য অগস্ট 2014 এ এটি বন্ধ করে দেওয়া হয়েছিল।
ssconvert file.csv file.xlsx
যদি আপনি পাইথন ইনস্টল করে থাকেন তবে " csv2odf " একটি ওপেন-সোর্স বিকল্প এবং ওডস , ওজেড , এইচটিএমএল, এক্সএলএক্সএক্স বা ডকএক্স ফাইলগুলি তৈরি করতে একটি টেম্প্লেটেড পদ্ধতির ব্যবহার করে।
http://sourceforge.net/projects/csv2odf/
csv2odf data.csv template.odt output.xlsx
নোড 8+ এবং ব্যাশ সহ:
npm install -g pguardiario/csv2xlsx
for file in *.csv; do csv2xlsx "$file"; done