Различные способы сохранения файлов
Различные способы сохранения файлов
Aspose.Cells предоставляет класс Workbook, который представляет файл Microsoft Excel и обеспечивает необходимые свойства и методы для работы с файлами Excel. Класс Workbook предоставляет метод Save, используемый для сохранения файлов Excel. Метод Save имеет множество перегрузок, которые используются для сохранения файлов различными способами.
Формат файла, в который файл сохраняется, определяется перечислением SaveFormat
Типы форматов файлов | Описание |
---|---|
CSV | Представляет собой файл CSV |
Excel97To2003 | Представляет файл Excel 97 - 2003 |
Xlsx | Представляет файл Excel 2007 XLSX |
Xlsm | Представляет файл Excel 2007 XLSM |
Xltx | Представляет шаблон файла Excel 2007 XLTX |
Xltm | Представляет макросов Excel 2007 XLTM |
Xlsb | Представляет двоичный файл Excel 2007 XLSB |
SpreadsheetML | Представляет файл XML электронной таблицы |
TSV | Представляет собой файл значений, разделенных табуляцией |
TabDelimited | Представляет файл текста с табуляцией |
ODS | Представляет собой файл ODS |
Html | Представляет файл(ы) HTML |
MHtml | Представляет файл(ы) MHTML |
Представляет файл PDF | |
XPS | Представляет документ XPS |
TIFF | Представляет файл формата Tagged Image File Format (TIFF) |
Как сохранить файл в разных форматах
Для сохранения файлов в хранилище необходимо указать имя файла (с полным путем к хранилищу) и желаемый формат файла (из перечисления SaveFormat) при вызове метода Workbook объекта Save.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
string filePath = dataDir + "Book1.xls"; | |
// Load your source workbook | |
Workbook workbook = new Workbook(filePath); | |
// Save in Excel 97 to 2003 format | |
workbook.Save(dataDir + ".output.xls"); | |
// OR | |
workbook.Save(dataDir + ".output.xls", new XlsSaveOptions()); | |
// Save in Excel2007 xlsx format | |
workbook.Save(dataDir + ".output.xlsx", SaveFormat.Xlsx); | |
// Save in Excel2007 xlsb format | |
workbook.Save(dataDir + ".output.xlsb", SaveFormat.Xlsb); | |
// Save in ODS format | |
workbook.Save(dataDir + ".output.ods", SaveFormat.Ods); | |
// Save in Pdf format | |
workbook.Save(dataDir + ".output.pdf", SaveFormat.Pdf); | |
// Save in Html format | |
workbook.Save(dataDir + ".output.html", SaveFormat.Html); | |
// Save in SpreadsheetML format | |
workbook.Save(dataDir + ".output.xml", SaveFormat.SpreadsheetML); | |
Как сохранить книгу в Pdf
Формат портативного документа (PDF) - это тип документа, созданный Adobe еще в 1990 годах. Цель этого формата файла заключалась во введении стандарта для представления документов и других справочных материалов в формате, независимом от прикладного программного обеспечения, аппаратного обеспечения и операционной системы. Формат файла PDF обладает полной способностью содержать информацию, такую как текст, изображения, гиперссылки, форм-поля, мультимедийные элементы, цифровые подписи, вложения, метаданные, геопространственные объекты и 3D-объекты, которые могут стать частью исходного документа.
Следующие коды показывают, как сохранить книгу в формате PDF с помощью Aspose.Cells:
// Instantiate the Workbook object | |
Workbook workbook = new Workbook(); | |
//Set value to Cell. | |
workbook.Worksheets[0].Cells["A1"].PutValue("Hello World!"); | |
workbook.Save("pdf1.pdf"); | |
// Save as Pdf format compatible with PDFA-1a | |
PdfSaveOptions saveOptions = new PdfSaveOptions(); | |
saveOptions.Compliance = PdfCompliance.PdfA1a; | |
workbook.Save("pdfa1a.pdf"); |
Как сохранить книгу в формате текста или CSV
Иногда вам может потребоваться конвертировать или сохранить книгу с несколькими листами в текстовом формате. Для текстовых форматов (например, TXT, TabDelim, CSV и т. д.) как Microsoft Excel, так и Aspose.Cells по умолчанию сохраняют только содержимое активного листа.
В следующем примере кода объясняется, как сохранить всю книгу в текстовом формате. Загрузите исходную книгу, которая может быть любым файлом электронных таблиц Microsoft Excel или OpenOffice (например, XLS, XLSX, XLSM, XLSB, ODS и т. д.) с любым количеством листов.
При выполнении кода он преобразует данные всех листов рабочей книги в формат TXT
Вы можете изменить тот же пример, чтобы сохранить свой файл в CSV. По умолчанию TxtSaveOptions.Separator — запятая, поэтому не указывайте разделитель при сохранении в формат CSV. Обратите внимание: Если вы используете оценочную версию и даже если свойство TxtSaveOptions.ExportAllSheets установлено в true, программа все равно экспортирует только один лист.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// 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.Separator = '\t'; | |
opts.ExportAllSheets = true; | |
// Save entire workbook data into file | |
workbook.Save(dataDir + "out.txt", opts); |
Как сохранить файл в текстовые файлы с пользовательским разделителем
Текстовые файлы содержат данные электронных таблиц без форматирования. Файл представляет собой своего рода обычный текстовый файл, который может содержать некоторые настраиваемые разделители между его данными.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
string filePath = dataDir + "Book1.xlsx"; | |
// Create a Workbook object and opening the file from its path | |
Workbook wb = new Workbook(filePath); | |
// Instantiate Text File's Save Options | |
TxtSaveOptions options = new TxtSaveOptions(); | |
// Specify the separator | |
options.Separator = Convert.ToChar(";"); | |
// Save the file with the options | |
wb.Save(dataDir + "output.csv", options); | |
Как сохранить файл в поток
Для сохранения файлов в поток создайте объект MemoryStream или FileStream и сохраните файл в этот объект потока, вызвав метод Workbook объекта объекта Save. Укажите желаемый формат файла, используя перечисление SaveFormat при вызове метода Save.
public async Task<IActionResult> DownloadExcel() | |
{ | |
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
string filePath = dataDir + "Book1.xlsx"; | |
// Load your source workbook | |
Workbook workbook = new Workbook(filePath); | |
// Save the workbook to a memory stream | |
var stream = new MemoryStream(); | |
workbook.Save(stream, SaveFormat.Xlsx); | |
// Reset the position of the stream to 0 | |
stream.Position = 0; | |
// Set the content type and file name | |
var contentType = "application/octet-stream"; | |
var fileName = "output.xlsx"; | |
// Set the response headers | |
Response.Headers.Add("Content-Disposition", $"attachment; filename=\"{fileName}\""); | |
Response.ContentType = contentType; | |
// Write the file contents to the response body stream | |
await stream.CopyToAsync(Response.Body); | |
// Close the file stream | |
stream.Dispose(); | |
// Return the response | |
return new EmptyResult(); | |
} |
Как сохранить файл Excel в файлы Html и Mht
Aspose.Cells просто может сохранить файл Excel, JSON, CSV или другие файлы, которые могут быть загружены Aspose.Cells, в файлы .html и .mht.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load your source workbook | |
Workbook workbook = new Workbook("Book1.xlsx"); | |
//save file to mhtml format | |
workbook.Save("out.mht"); |
Как сохранить файл Excel в форматы OpenOffice (ODS, SXC, FODS, OTS)
Мы можем сохранить файлы в формате OpenOffice: ODS, SXC, FODS, OTS и т. д.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load your source workbook | |
Workbook workbook = new Workbook("book1.xlsx"); | |
// Save as ods file | |
workbook.Save("Out.ods"); | |
// Save as sxc file | |
workbook.Save("Out.sxc"); | |
// Save as fods file | |
workbook.Save("Out.fods"); |
Как сохранить файл Excel в формат JSON или XML
JSON (JavaScript Object Notation) – это открытый стандартный файловый формат для обмена данными, который использует удобочитаемый текст для хранения и передачи данных. JSON-файлы сохраняются с расширением .json. JSON требует меньше форматирования и является хорошей альтернативой XML. JSON происходит из JavaScript, но является независимым от языка форматом данных. Создание и разбор JSON поддерживается многими современными языками программирования. application/json – это тип медиа-формат, используемый для JSON.
Aspose.Cells поддерживает сохранение файлов в форматах JSON или XML.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load your source workbook | |
Workbook workbook = new Workbook("Book1.xlsx"); | |
// convert the workbook to json file. | |
workbook.Save(dir + "book1.json"); |