قم بتحويل Excel إلى CSV و CSV إلى Excel باستخدام C ++

يعد Excel تنسيقًا شائعًا لمشاركة المعلومات. قد تجد نفسك في مواقف يكون لديك فيها بيانات في ملف Excel (XLS أو XLSX) تحتاج إلى استيرادها إلى قاعدة بيانات. لهذا ، سوف تحتاج إلى تحويل ملف Excel إلى تنسيق CSV. من ناحية أخرى ، قد يكون لديك بيانات بتنسيق CSV تم تصديرها من قاعدة بيانات تحتاج إلى معالجتها بشكل أكبر في ملف Excel. في مثل هذه الحالات ، قد تحتاج إلى تحويل ملف CSV إلى تنسيق Excel. في هذه المقالة ، ستتعلم كيفية إجراء هذين التحويلين برمجيًا باستخدام C ++.

C ++ API لتحويل ملفات Excel إلى ملفات CSV و CSV إلى تنسيق Excel

Aspose.Cells for C ++ هي مكتبة C ++ أصلية تسمح لك بإنشاء ملفات Excel وقراءتها وتعديلها. علاوة على ذلك ، تدعم واجهة برمجة التطبيقات تحويل ملفات Excel إلى تنسيق CSV والعكس صحيح. يمكنك إما تثبيت API من خلال NuGet أو تنزيلها مباشرة من قسم التنزيلات.

PM> Install-Package Aspose.Cells.Cpp

تحويل ملفات Excel إلى تنسيق CSV باستخدام C ++

يعد تحويل ملفات Excel إلى تنسيق CSV أمرًا سهلاً مع Aspose.Cells for C ++ API. فيما يلي خطوات تحويل ملفات Excel إلى تنسيق CSV باستخدام C ++.

  • قم بتحميل ملف Excel باستخدام فئة IWorkbook.
  • احفظ الملف بتنسيق CSV باستخدام [IWorkbook-> Save (intrusiveptrAspose::Cells::Systems::String fileName ، Aspose :: Cells :: SaveFormat saveFormat)] طريقة 7.

فيما يلي نموذج التعليمات البرمجية لتحويل ملفات Excel إلى تنسيق CSV.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بتحميل ملف Excel للإدخال
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// حفظ ملف الإخراج CSV
workbook->Save(outDir->StringAppend(new String("Sample1_out.csv")), SaveFormat_CSV);

تحويل أوراق عمل Excel إلى ملفات CSV

يحول المثال السابق ورقة العمل الأولى فقط إذا كان ملف Excel يحتوي على أوراق عمل متعددة. في حالة رغبتك في تحويل أوراق عمل متعددة إلى تنسيق CSV ، يمكنك اتباع الخطوات التالية.

فيما يلي نموذج التعليمات البرمجية لتحويل أوراق عمل Excel إلى ملفات CSV باستخدام C ++.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بتحميل ملف Excel
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 إلى تنسيق Excel باستخدام C ++

فيما يلي خطوات تحويل ملفات CSV إلى تنسيق Excel باستخدام C ++.

  • قم بإنشاء مثيل لفئة ILoadOptions.
  • أنشئ كائنًا من فئة IWorkbook باستخدام المثيل ILoadOptions الذي تم إنشاؤه مسبقًا.
  • احفظ الملف بتنسيق Excel باستخدام [IWorkbook-> Save (intrusiveptrAspose::Cells::Systems::String fileName ، Aspose :: Cells :: SaveFormat saveFormat)] طريقة 17.

فيما يلي نموذج التعليمات البرمجية لتحويل ملفات CSV إلى تنسيق Excel باستخدام C ++.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بإنشاء كائن LoadOptions بتنسيق CSV
intrusive_ptr<ILoadOptions> loadOptions = Factory::CreateILoadOptions(LoadFormat_CSV);

// قم بتحميل ملف Excel للإدخال
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);

احصل على رخصة مجانية

يمكنك تجربة واجهة برمجة التطبيقات بدون قيود التقييم من خلال طلب ترخيص مؤقت مجاني.

استنتاج

في هذه المقالة ، تعلمت كيفية تحويل ملفات Excel إلى تنسيق CSV وملفات CSV إلى تنسيق Excel (XLS / XLSX) باستخدام C ++. Aspose.Cells for C ++ هي واجهة برمجة تطبيقات واسعة توفر العديد من الميزات الإضافية للعمل مع ملفات Excel. يمكنك استكشاف API بالتفصيل باستخدام الوثائق الرسمية. في حالة وجود أي أسئلة ، لا تتردد في الاتصال بنا على منتدى الدعم المجاني.

أنظر أيضا