Сохранение файлов Excel в CSV, PDF и другие форматы
Различные способы сохранения ваших файлов
Aspose.Cells API предоставляет класс с именемРабочая тетрадькоторый представляет файл Excel и предоставляет все необходимые свойства и методы, которые могут понадобиться разработчикам для работы с их файлами Excel.Рабочая тетрадь класс предоставляетспасти, который используется для сохранения файлов Excel.спасти имеет множество перегрузок, которые используются для сохранения файлов Excel различными способами.
Разработчики также могут указать формат файла, в котором должны быть сохранены их файлы. Файлы могут быть сохранены в нескольких форматах, таких как XLS, SpreadsheetML, CSV, значения с разделителями табуляции, значения, разделенные табуляцией TSV, XPS и многие другие. Эти форматы файлов задаются с помощьюСохранитьФормат перечисление.
СохранитьФорматперечисление содержит множество предопределенных форматов файлов (которые могут быть выбраны вами) следующим образом:
Типы форматов файлов | Описание |
---|---|
АВТО | API пытается определить подходящий формат от расширения файла, указанного в первом параметре, до метода сохранения |
CSV | Представляет файл CSV |
XLSX | Представляет файл Office Open XML SpreadsheetML. |
XLSM | Представляет файл XLSM на основе XML. |
XLTX | Представляет файл шаблона Excel |
XLTM | Представляет файл шаблона Excel с поддержкой макросов. |
XLAM | Представляет файл Excel XLAM. |
TSV | Представляет файл значений, разделенных табуляцией. |
TAB_DELIMITED | Представляет текстовый файл с разделителями табуляции |
HTML | Представляет файл(ы) HTML |
M_HTML | Представляет файл(ы) MHTML |
ODS | Представляет файл электронной таблицы OpenDocument. |
EXCEL_97_TO_2003 | Представляет файл XLS, который является форматом по умолчанию для версий Excel с 1997 по 2003 год. |
SPREADSHET_ML | Представляет файл SpreadSheetML. |
XLSB | Представляет двоичный файл Excel 2007 XLSB. |
НЕИЗВЕСТНЫЙ | Представляет нераспознанный формат, не может быть сохранен. |
Представляет документ PDF | |
XPS | Представляет файл спецификации XML Paper (XPS). |
TIFF | Представляет файл формата Tagged Image File Format (TIFF) |
SVG | Представляет файл масштабируемой векторной графики на основе XML (SVG). |
DIF | Представляет формат обмена данными. |
НОМЕРА | Представляет файл чисел. |
MARKDOWN | Представляет уцененный документ. |
Обычно существует два способа сохранения файлов Excel: |
- Сохранение файла в каком-либо месте
- Сохранение файла в поток
Сохранение файла в каком-либо месте
Если разработчикам необходимо сохранить свои файлы в каком-либо месте хранения, они могут просто указать имя файла (с указанием полного пути к нему) и желаемый формат файла (используя параметрСохранитьФормат перечисление) при вызовеспасти методРабочая тетрадьобъект.
Пример:
// 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 и т. д.) по умолчанию как Microsoft Excel, так и Aspose.Cells сохраняют содержимое только активного рабочего листа.
В следующем примере кода показано, как сохранить всю книгу в текстовом формате. Загрузите исходную книгу, которая может быть любым файлом электронной таблицы Microsoft Excel или OpenOffice (например, XLS, XLSX, XLSM, XLSB, ODS и т. д.) с любым количеством рабочих листов.
Когда код выполняется, он преобразует данные всех листов книги в формат TXT.
Вы можете изменить тот же пример, чтобы сохранить файл по адресу CSV. По умолчаниюTxtSaveOptions.Separator является запятой, поэтому не указывайте разделитель при сохранении в формате CSV.
Пример:
// 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."); |
Сохранение файла в поток
Если разработчикам необходимо сохранить свои файлы вТранслировать то они должны создатьFileOutputStream объект, а затем сохраните файл в этомТранслировать объект, позвонив вспасти методРабочая тетрадь объект. Разработчики также могут указать желаемый формат файла (используяСохранитьФормат перечисление) при вызовеспасти метод.
Пример:
// 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ДоступностьExtractContentпараметр для управления доступом к содержимому в преобразованном PDF. Это означает, что он позволяет программному обеспечению для чтения с экрана использовать текст в файле 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 class вы можете экспортировать пользовательские свойства исходной книги в файл 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); |
Преобразование книги Excel в Markdown
Aspose.Cells API обеспечивает поддержку экспорта электронных таблиц в формат Markdown. Чтобы экспортировать активный рабочий лист в Markdown, передайтеСохранитьФормат.Markdownв качестве второго параметраКнига. Сохранить метод. Вы также можете использоватьMarkdownSaveOptionsкласс, чтобы указать дополнительные параметры для экспорта рабочего листа в Markdown.
В следующем примере кода демонстрируется экспорт активного рабочего листа в 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); |