اکسل را به CSV و CSV را به اکسل با استفاده از C++ تبدیل کنید

اکسل یک فرمت محبوب برای به اشتراک گذاری اطلاعات است. ممکن است در موقعیت‌هایی قرار بگیرید که داده‌هایی در یک فایل Excel(XLS یا XLSX) دارید که باید آن‌ها را به پایگاه داده وارد کنید. برای این کار، باید فایل اکسل را به فرمت CSV تبدیل کنید. از سوی دیگر، ممکن است داده هایی با فرمت CSV داشته باشید که از یک پایگاه داده صادر شده اند که باید آنها را بیشتر در یک فایل اکسل دستکاری کنید. برای چنین مواردی، باید فایل CSV را به فرمت Excel تبدیل کنید. در این مقاله، نحوه انجام هر دو این تبدیل را به صورت برنامه نویسی با استفاده از ++C یاد خواهید گرفت.

C++ API برای تبدیل فایل‌های اکسل به CSV و فایل‌های CSV به فرمت اکسل

Aspose.Cells for C++ یک کتابخانه بومی C++ است که به شما امکان می‌دهد فایل‌های Excel را ایجاد، بخوانید و تغییر دهید. علاوه بر این، API از تبدیل فایل های Excel به فرمت CSV و بالعکس پشتیبانی می کند. می‌توانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش دانلودها دانلود کنید.

PM> Install-Package Aspose.Cells.Cpp

تبدیل فایل های اکسل به فرمت CSV با استفاده از C++

تبدیل فایل های اکسل به فرمت CSV با Aspose.Cells برای C++ API بسیار آسان است. در زیر مراحل تبدیل فایل های اکسل به فرمت CSV با استفاده از C++ آمده است.

کد زیر نمونه ای برای تبدیل فایل های اکسل به فرمت CSV است.

// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");

// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");

// فایل اکسل ورودی را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// فایل CSV خروجی را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("Sample1_out.csv")), SaveFormat_CSV);

کاربرگ های اکسل را به فایل های CSV تبدیل کنید

اگر فایل اکسل حاوی چندین کاربرگ باشد، مثال قبلی فقط اولین کاربرگ را تبدیل می کند. در صورتی که می خواهید چندین کاربرگ را به فرمت CSV تبدیل کنید، می توانید مراحل زیر را دنبال کنید.

کد زیر نمونه ای برای تبدیل کاربرگ های Excel به فایل های CSV با استفاده از C++ است.

// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");

// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");

// فایل اکسل را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// کاربرگ های کتاب کار را بازیابی کنید.
intrusive_ptr<IWorksheetCollection> sheets = workbook->GetIWorksheets();

// ایجاد شی سازنده رشته برای الحاق رشته ها.
intrusive_ptr<Aspose::Cells::Systems::Text::StringBuilder> stringBuilder = new Aspose::Cells::Systems::Text::StringBuilder();

for (int sheet = 0; sheet < sheets->GetCount(); sheet++)
{
	// کاربرگ را برای کپی بردارید
	intrusive_ptr<IWorksheet> worksheet = sheets->GetObjectByIndex(sheet);

	// یک نمونه از کلاس IWorkbook برای نمایش کتاب کار جدید ایجاد کنید
	intrusive_ptr<IWorkbook> newWorkbook = Factory::CreateIWorkbook();

	// کاربرگ بازیابی شده قبلی را در کتاب کار جدید کپی کنید
	newWorkbook->GetIWorksheets()->GetObjectByIndex(0)->Copy(worksheet);

	// سازنده رشته را پاک کنید و مسیر خروجی را با الحاق رشته ایجاد کنید.
	stringBuilder->Clear();
	stringBuilder->Append(outDir);
	stringBuilder->Append((StringPtr)new String("Sample1_sheet_"));
	stringBuilder->Append(sheet);
	stringBuilder->Append((StringPtr)new String("_out.csv"));

	// فایل CSV خروجی را ذخیره کنید
	newWorkbook->Save(stringBuilder->ToString(), SaveFormat_CSV);
}

تبدیل فایل های CSV به فرمت اکسل با استفاده از C++

در زیر مراحل تبدیل فایل‌های CSV به فرمت اکسل با استفاده از C++ آمده است.

کد زیر نمونه ای برای تبدیل فایل های CSV به فرمت اکسل با استفاده از C++ است.

// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");

// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");

// شی CSV LoadOptions را ایجاد کنید
intrusive_ptr<ILoadOptions> loadOptions = Factory::CreateILoadOptions(LoadFormat_CSV);

// فایل اکسل ورودی را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.csv")), loadOptions);

// فایل CSV خروجی را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("Sample1_out.xlsx")), SaveFormat_Xlsx);

مجوز رایگان دریافت کنید

با درخواست [مجوز موقت رایگان] می‌توانید API را بدون محدودیت ارزیابی امتحان کنید.

نتیجه

در این مقاله با نحوه تبدیل فایل های اکسل به فرمت CSV و فایل های CSV به فرمت اکسل (XLS/XLSX) با استفاده از C++ آشنا شده اید. Aspose.Cells for C++ یک API گسترده است که بسیاری از ویژگی های اضافی را برای کار با فایل های اکسل فراهم می کند. با استفاده از مستندات رسمی می‌توانید API را با جزئیات کاوش کنید. در صورت وجود هرگونه سوال، لطفاً در [تالار گفتمان پشتیبانی رایگان20 با ما تماس بگیرید.

همچنین ببینید