حفظ ملفات Excel في تنسيق CSV، PDF وتنسيقات أخرى
طرق مختلفة لحفظ ملفاتك
يوفر Aspose.Cells API فئة تسمى Workbook تمثل ملف Excel وتوفر جميع الخصائص والأساليب اللازمة التي قد يحتاجها المطورون للعمل مع ملفات Excel الخاصة بهم. توفر فئة Workbook أسلوبًا save يستخدم لحفظ ملفات Excel. يحتوي الأسلوب save على العديد من التحميلات التي تستخدم لحفظ ملفات Excel بطرق مختلفة.
يمكن للمطورين أيضًا تحديد تنسيق الملف الذي يجب حفظ ملفاتهم فيه. يمكن حفظ الملفات في عدة تنسيقات مثل XLS، SpreadsheetML، CSV، مقسم بالجدول وبيانات مفصولة بفواصل TSV، XPS والعديد من التنسيقات الأخرى. يتم تحديد هذه التنسيقات باستخدام تعداد SaveFormat.
يحتوي تعداد SaveFormat على العديد من تنسيقات الملفات المحددة مسبقًا (التي يمكن اختيارها من قبلك) على النحو التالي:
أنواع تنسيق الملفات | الوصف |
---|---|
AUTO | يحاول واجهة برمجة التطبيقات (API) التعرف على التنسيق المناسب من امتداد الملف المحدد في المعلمة الأولى لطريقة الحفظ |
CSV | يمثل ملف CSV |
XLSX | يمثل ملف شريحة Excel المفتوح لـOffice Open XML |
XLSM | يمثل ملف XLSM بناءً على XML |
XLTX | يمثل ملف قالب Excel |
XLTM | يمثل ملف قالب ممكن تنفيذه لبرامج Excel |
XLAM | يمثل ملف XLAM لبرنامج Excel |
TSV | يمثل ملف قيم مفصولة بفواصل |
TAB_DELIMITED | يمثل ملف نصي مفصول بواسطة علامات التبويب |
HTML | يمثل ملف(ات) HTML |
M_HTML | يمثل ملف(ات) MHTML |
ODS | يمثل ملف جدول بيانات OpenDocument |
EXCEL_97_TO_2003 | يمثل ملف XLS الذي هو التنسيق الافتراضي لإصدارات Excel من عام 1997 إلى 2003 |
SPREADSHEET_ML | يمثل ملف SpreadSheetML |
XLSB | يمثل ملف Excel 2007 الثنائي XLSB |
UNKNOWN | يمثل تنسيق غير معترف به، لا يمكن حفظه |
يمثل مستند PDF | |
XPS | يمثل ملف مواصفات ورقة XML (XPS) |
TIFF | يمثل ملف نوع الصورة المعبرة (TIFF) |
SVG | يمثل ملف SVG (الرسومات المتجهة قابلة للتوسيع على أساس XML) |
DIF | يمثل تنسيق تبادل البيانات |
NUMBERS | يمثل ملف أرقام |
MARKDOWN | يمثل مستند markdown |
عادةً، هناك طريقتان لحفظ ملفات Excel على النحو التالي: |
- حفظ الملف في موقع معين
- حفظ الملف في تيار بيانات
حفظ ملف في موقع معين
إذا كان المطورون بحاجة إلى حفظ ملفاتهم في موقع تخزين ما ، فيمكنهم ببساطة تحديد اسم الملف (مع مسار تخزينه الكامل) وتنسيق الملف المطلوب (باستخدام تعداد SaveFormat) أثناء استدعاء الأسلوب save في Workbook.
مثال:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SavingFiletoSomeLocation.class) + "loading_saving/"; | |
String filePath = dataDir + "Book1.xls"; | |
// Creating an Workbook object with an Excel file path | |
Workbook workbook = new Workbook(filePath); | |
// Save in Excel 97 – 2003 format | |
workbook.save(dataDir + "SFTSomeLocation_out.xls"); | |
// OR | |
// workbook.save(dataDir + ".output..xls", new | |
// XlsSaveOptions(SaveFormat.Excel97To2003)); | |
// Save in Excel2007 xlsx format | |
workbook.save(dataDir + "SFTSomeLocation_out.xlsx", FileFormatType.XLSX); | |
// Save in Excel2007 xlsb format | |
workbook.save(dataDir + "SFTSomeLocation_out.xlsb", FileFormatType.XLSB); | |
// Save in ODS format | |
workbook.save(dataDir + "SFTSomeLocation_out.ods", FileFormatType.ODS); | |
// Save in Pdf format | |
workbook.save(dataDir + "SFTSomeLocation_out.pdf", FileFormatType.PDF); | |
// Save in Html format | |
workbook.save(dataDir + "SFTSomeLocation_out.html", FileFormatType.HTML); | |
// Save in SpreadsheetML format | |
workbook.save(dataDir + "SFTSomeLocation_out.xml", FileFormatType.EXCEL_2003_XML); | |
// Print Message | |
System.out.println("Worksheets are saved successfully."); |
حفظ دفتر العمل إلى تنسيق نصي أو CSV
في بعض الأحيان، ترغب في تحويل أو حفظ دفتر عمل يحتوي على عدة أوراق عمل إلى شكل نصي. في حالات الشكل النصي (على سبيل المثال TXT, TabDelim, CSV الخ)، فإن كل من مايكروسوفت إكسل وAspose.Cells تحفظان افتراضيًا محتويات الورقة العمل النشطة فقط.
يوضح مثال الكود التالي كيفية حفظ دفتر عمل بأكمله في تنسيق نصي. يُحمّل دفتر العمل المصدري الذي يمكن أن يكون أي ملف جداول بيانات Microsoft Excel أو OpenOffice (مثل XLS وXLSX وXLSM وXLSB وODS وما إلى ذلك) مع أي عدد من ورقات العمل.
عند تنفيذ الكود، يحول بيانات جميع الأوراق في كتاب العمل إلى تنسيق نصي.
يمكنك تعديل نفس المثال لحفظ ملفك إلى CSV. افتراضيًا، TxtSaveOptions.Separator هو فاصلة، لذلك لا تحدد فاصلة عند الحفظ بتنسيق CSV. يرجى ملاحظة: إذا كنت تستخدم النسخة التقييمية وحتى إذا تم تعيين معلمة الأسلوب TxtSaveOptions.setExportAllSheets(boolean value) على القيمة true، فإن البرنامج سيقوم فقط بتصدير ورقة عمل واحدة.
مثال:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SaveWorkbookToTextCSVFormat.class) + "loading_saving/"; | |
// Load your source workbook | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Text save options. You can use any type of separator | |
TxtSaveOptions opts = new TxtSaveOptions(); | |
opts.setSeparator('\t'); | |
opts.setExportAllSheets(true); | |
//Save entire workbook data into file | |
workbook.save(dataDir + "SWTTextCSVFormat-out.txt", opts); | |
// Print message | |
System.out.println("Excel to Text File Conversion performed successfully."); |
حفظ ملفات النص بفاصل مخصص
تحتوي ملفات النص على بيانات جداول بيانات دون تنسيق. الملف هو نوع ملف نصي عادي يمكن أن يحتوي على بعض الفواصل المخصصة بين بياناته.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SavingTextFilewithCustomSeparator.class) + "loading_saving/"; | |
// Creating an Workbook object with an Excel file path | |
Workbook workbook = new Workbook(dataDir + "Book1.xlsx"); | |
TxtSaveOptions toptions = new TxtSaveOptions(); | |
// Specify the separator | |
toptions.setSeparator(';'); | |
workbook.save(dataDir + "STFWCSeparator_out.csv"); | |
// Print Message | |
System.out.println("Worksheets are saved successfully."); |
حفظ ملف في تيار
إذا كان المطورون بحاجة إلى حفظ ملفاتهم في Stream ، فيجب عليهم إنشاء كائن FileOutputStream ثم حفظ الملف في ذلك Stream عن طريق استدعاء الأسلوب save في Workbook. يمكن للمطورين أيضًا تحديد تنسيق الملف المطلوب (باستخدام تعداد SaveFormat) أثناء استدعاء الأسلوب save.
مثال:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SavingFiletoStream.class) + "loading_saving/"; | |
// Creating an Workbook object with an Excel file path | |
Workbook workbook = new Workbook(dataDir + "Book1.xlsx"); | |
FileOutputStream stream = new FileOutputStream(dataDir + "SFToStream_out.xlsx"); | |
workbook.save(stream, FileFormatType.XLSX); | |
// Print Message | |
System.out.println("Worksheets are saved successfully."); | |
stream.close(); |
حفظ الملف بتنسيق آخر
ملفات XLS
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SaveXLSFile.class) + "loading_saving/"; | |
// Creating an Workbook object with an Excel file path | |
Workbook workbook = new Workbook(); | |
// Save in xls format | |
workbook.save(dataDir + "SXLSFile_out.xls", FileFormatType.EXCEL_97_TO_2003); | |
// Print Message | |
System.out.println("Worksheets are saved successfully."); |
ملفات XLSX
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SaveXLSXFile.class) + "loading_saving/"; | |
// Creating an Workbook object with an Excel file path | |
Workbook workbook = new Workbook(); | |
// Save in xlsx format | |
workbook.save(dataDir + "SXLSXFile_out.xlsx", FileFormatType.XLSX); | |
// Print Message | |
System.out.println("Worksheets are saved successfully."); |
ملفات PDF
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(SaveInPdfFormat.class) + "loading_saving/"; | |
// Creating an Workbook object with an Excel file path | |
Workbook workbook = new Workbook(); | |
// Save in PDF format | |
workbook.save(dataDir + "SIPdfFormat_out.pdf", FileFormatType.PDF); | |
// Print Message | |
System.out.println("Worksheets are saved successfully."); |
تعيين خيار ContentCopyForAccessibility
مع فئة PdfSaveOptions، يمكنك الحصول على أو تعيين خيار PDF AccessibilityExtractContent للتحكم في الوصول إلى المحتوى في ملف PDF المحول. هذا يعني أنه يسمح لبرامج قراءة الشاشة باستخدام النص داخل ملف PDF لقراءة الملف. يمكنك تعطيله عن طريق تطبيق كلمة مرور لتغيير الأذونات وإلغاء اختيار العنصرين في اللقطة الشاشية هنا.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Load excel file containing some data | |
Workbook workbook = new Workbook("book1.xlsx"); | |
// Create an instance of PdfSaveOptions and pass SaveFormat to the constructor | |
PdfSaveOptions pdfSaveOpt = new PdfSaveOptions(SaveFormat.PDF); | |
// Create an instance of PdfSecurityOptions | |
PdfSecurityOptions securityOptions = new PdfSecurityOptions(); | |
// Set AccessibilityExtractContent to true | |
securityOptions.setAccessibilityExtractContent(false); | |
// Set the securityoption in the PdfSaveOptions | |
pdfSaveOpt.setSecurityOptions(securityOptions); | |
// Save the workbook to PDF format while passing the object of PdfSaveOptions | |
workbook.save("outFile.pdf", pdfSaveOpt); |
تصدير الخصائص المخصصة إلى ملف PDF
مع فئة PdfSaveOptions، يمكنك تصدير الخصائص المخصصة في جدول البيانات المصدري إلى ملف PDF. تم توفير معيار التصنيف PdfCustomPropertiesExport لتحديد الطريقة التي تتم بها تصدير الخصائص. يمكن رؤية هذه الخصائص في برنامج Adobe Acrobat Reader عن طريق النقر على ملف ومن ثم الخيارات كما هو موضح في الصورة التالية. يمكن تنزيل ملف القالب “sourceWithCustProps.xlsx” من هنا للاختبار وملف PDF الناتج “outSourceWithCustProps” متاح من هنا للتحليل.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Load excel file containing custom properties | |
Workbook workbook = new Workbook("sourceWithCustProps.xlsx"); | |
// Create an instance of PdfSaveOptions and pass SaveFormat to the constructor | |
PdfSaveOptions pdfSaveOpt = new PdfSaveOptions(SaveFormat.PDF); | |
// Set CustomPropertiesExport property to PdfCustomPropertiesExport.Standard | |
pdfSaveOpt.setCustomPropertiesExport(PdfCustomPropertiesExport.STANDARD); | |
// Save the workbook to PDF format while passing the object of PdfSaveOptions | |
workbook.save("outSourceWithCustProps.pdf", pdfSaveOpt); |
تحويل دفتر العمل إكسل إلى Markdown
توفر Aspose.Cells API دعمًا لتصدير الأوراق الجدولية إلى تنسيق Markdown. لتصدير الورقة الجدولية النشطة إلى Markdown، قم بتمرير SaveFormat.Markdown كالمعلمة الثانية لأسلوب Workbook.Save. يمكنك أيضًا استخدام فئة MarkdownSaveOptions لتحديد الإعدادات الإضافية لتصدير الورقة الجدولية إلى Markdown.
يوضح المثال التالي تصدير ورقة البيانات النشطة إلى Markdown باستخدام عضو تصنيف SaveFormat.Markdown. يرجى الاطلاع على ملف Markdown الناتج الذي تم إنشاؤه من قبل الكود للإشارة.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(ConvertExcelFileToMarkdown.class) + "LoadingSavingConvertingAndManaging/"; | |
Workbook workbook = new Workbook(dataDir + "Book1.xls"); | |
// Save as Markdown | |
workbook.save(dataDir + "Book1.md", SaveFormat.MARKDOWN); |