Импорт и экспорт данных
Импорт данных в рабочий лист
Данные представляют мир таким, какой он есть. Чтобы разобраться в данных, мы анализируем их и понимаем мир. Данные превращаются в информацию.
Существует много способов выполнения анализа: размещение данных в электронных таблицах и различные манипуляции с ними — один из распространенных методов. С помощью Aspose.Cells легко создавать электронные таблицы, которые берут данные из ряда внешних источников и подготавливают их для анализа.
В этой статье обсуждаются некоторые методы импорта данных, к которым у разработчиков есть доступ по номеру Aspose.Cells.
Импорт данных с помощью Aspose.Cells
Когда вы открываете файл Excel с номером Aspose.Cells, все данные в файле импортируются автоматически. Aspose.Cells также может импортировать данные из других источников данных:
Aspose.Cells предоставляет класс,Рабочая тетрадь , представляющий файл Excel Microsoft.Рабочая тетрадь класс содержит коллекциюРабочий листКоллекция который позволяет получить доступ к каждому рабочему листу в файле Excel. Рабочий лист представленРабочий лист учебный класс.Рабочий лист класс предоставляетCells коллекция.Cellscollection предоставляет очень полезные методы для импорта данных из других источников данных. В этой статье объясняется, как можно использовать эти методы.
Импорт из массива
Чтобы импортировать данные в электронную таблицу из массива, вызовите метод importArray классаCellsколлекция. Существует много перегруженных версий метода importArray, но типичная перегрузка принимает следующие параметры:
- Множество, объект массива, из которого вы импортируете контент.
- Номер строкиномер строки первой ячейки, в которую будут импортированы данные.
- Номер столбца, номер столбца первой ячейки, в которую будут импортированы данные.
- Вертикальный, логическое значение, указывающее, следует ли импортировать данные вертикально или горизонтально.
// 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(ImportingFromArray.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Obtaining the reference of the worksheet | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Creating an array containing names as string values | |
String[] names = new String[] { "laurence chen", "roman korchagin", "kyle huang" }; | |
// Importing the array of names to 1st row and first column vertically | |
Cells cells = worksheet.getCells(); | |
cells.importArray(names, 0, 0, false); | |
// Saving the Excel file | |
workbook.save(dataDir + "ImportingFromArray_out.xls"); | |
// Printing the name of the cell found after searching worksheet | |
System.out.println("Process completed successfully"); |
Импорт из многомерных массивов
Чтобы импортировать данные в электронную таблицу из многомерных массивов, вызовите соответствующую перегрузку importArray классаCellsколлекция:
// 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(ImportingFromMultiDimensionalArray.class) + "data/"; | |
// Instantiate a new Workbook | |
Workbook workbook = new Workbook(); | |
// Get the first worksheet (default sheet) in the Workbook | |
Cells cells = workbook.getWorksheets().get("Sheet1").getCells(); | |
// Define a multi-dimensional array and store some data into it. | |
String[][] strArray = { { "A", "1A", "2A" }, { "B", "2B", "3B" } }; | |
// Import the multi-dimensional array to the sheet | |
cells.importArray(strArray, 0, 0); | |
// Save the Excel file | |
workbook.save(dataDir + "IFMDA_out.xlsx"); |
Импорт из ArrayList
Чтобы импортировать данные изArrayList к рабочим листам, вызовитеИмпортмассивлист методCells коллекция.Импортмассивлист принимает следующие параметры:
- ArrayList ,ArrayListобъект, содержимое которого будет импортировано.
- Номер строки, номер строки первой ячейки диапазона ячеек, содержимое которого будет импортировано.
- Номер столбца, номер столбца первой ячейки, из которой будут импортированы данные.
- Вертикальный— это логическое значение, указывающее, следует ли импортировать данные вертикально или горизонтально.
// 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(ImportingFromArrayList.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Obtaining the reference of the worksheet | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Instantiating an ArrayList object | |
ArrayList list = new ArrayList(); | |
// Add few names to the list as string values | |
list.add("laurence chen"); | |
list.add("roman korchagin"); | |
list.add("kyle huang"); | |
list.add("tommy wang"); | |
// Importing the contents of ArrayList to 1st row and first column | |
// vertically | |
worksheet.getCells().importArrayList(list, 0, 0, true); | |
// Saving the Excel file | |
workbook.save(dataDir + "IFromArrayList_out.xls"); | |
// Printing the name of the cell found after searching worksheet | |
System.out.println("Process completed successfully"); |
Импорт из пользовательских объектов в объединенную область
Чтобы импортировать данные из коллекции объектов на рабочий лист, содержащий объединенные ячейки, используйтеImportTableOptions.CheckMergedCellsимущество. Если в шаблоне Excel есть объединенные ячейки, установите значениеImportTableOptions.CheckMergedCellsсвойство истинно. ПройтиImportTableOptionsобъект вместе со списком столбцов/свойств в метод для отображения желаемого списка объектов. В следующем примере кода показано использованиеImportTableOptions.CheckMergedCellsсвойство для импорта данных из настраиваемых объектов в объединенные ячейки. Пожалуйста, смотрите прикрепленныйисходный файл Excelфайл ивывод 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(ImportingFromArrayList.class) + "data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Obtaining the reference of the worksheet | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Instantiating an ArrayList object | |
ArrayList list = new ArrayList(); | |
// Add few names to the list as string values | |
list.add("laurence chen"); | |
list.add("roman korchagin"); | |
list.add("kyle huang"); | |
list.add("tommy wang"); | |
// Importing the contents of ArrayList to 1st row and first column | |
// vertically | |
worksheet.getCells().importArrayList(list, 0, 0, true); | |
// Saving the Excel file | |
workbook.save(dataDir + "IFromArrayList_out.xls"); | |
// Printing the name of the cell found after searching worksheet | |
System.out.println("Process completed successfully"); |
Импорт данных из JSON
Aspose.Cells предоставляетJsonUtility класс обработки JSON.JsonUtility класс имеетИмпорт данных метод импорта данных JSON. Aspose.Cells также предоставляетJsonLayoutOptionsкласс, представляющий параметры макета JSON.Импорт данных метод принимаетJsonLayoutOptions как параметр.JsonLayoutOptions класс предоставляет следующие свойства.
- Массив как таблица: Указывает на то, что массив должен обрабатываться как таблица или нет.
- КонвертироватьЧисловойОрДате: Получает или задает значение, указывающее, следует ли преобразовать строку в JSON в число или дату.
- Формат даты: Получает и задает формат значения даты.
- Игнораррайтитле: указывает, следует ли игнорировать заголовок, если свойство объекта является массивом
- ИгнорироватьНулл: Указывает, следует ли игнорировать нулевое значение.
- Игнореобжекттитле: Указывает, следует ли игнорировать заголовок, если свойство объекта является объектом.
- Формат номера: Получает и задает формат числового значения.
- НазваниеСтиль: Получает и задает стиль заголовка.
Пример кода, приведенный ниже, демонстрирует использованиеJsonUtility иJsonLayoutOptions классы для импорта данных JSON.
// 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(ImportingFromJson.class) + "Data/"; | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Read File | |
File file = new File(dataDir + "Test.json"); | |
BufferedReader bufferedReader = new BufferedReader(new FileReader(file)); | |
String jsonInput = ""; | |
String tempString; | |
while ((tempString = bufferedReader.readLine()) != null) { | |
jsonInput = jsonInput + tempString; | |
} | |
bufferedReader.close(); | |
// Set Styles | |
CellsFactory factory = new CellsFactory(); | |
Style style = factory.createStyle(); | |
style.setHorizontalAlignment(TextAlignmentType.CENTER); | |
style.getFont().setColor(Color.getBlueViolet()); | |
style.getFont().setBold(true); | |
// Set JsonLayoutOptions | |
JsonLayoutOptions options = new JsonLayoutOptions(); | |
options.setTitleStyle(style); | |
options.setArrayAsTable(true); | |
// Import JSON Data | |
JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, options); | |
// Save Excel file | |
workbook.save(dataDir + "ImportingFromJson.out.xlsx"); |
Экспорт данных из рабочего листа
Aspose.Cells не только позволяет своим пользователям импортировать данные в рабочие листы из внешних источников данных, но также позволяет им экспортировать данные рабочего листа в массив.
Экспорт данных с использованием Aspose.Cells - Экспорт данных в массив
Aspose.Cells предоставляет класс,Рабочая тетрадь , представляющий файл Excel Microsoft.Рабочая тетрадь класс содержитРабочий листКоллекция который позволяет получить доступ к каждому рабочему листу в файле Excel. Рабочий лист представленРабочий лист учебный класс.Рабочий лист класс предоставляетCells коллекция.
Данные можно легко экспортировать в объект Array с помощьюCells учебный класс'экспортмассив метод.
Столбцы, содержащие строго типизированные данные
Электронные таблицы хранят данные в виде последовательности строк и столбцов. Использоватьэкспортмассив для экспорта данных из рабочего листа в массив.экспортмассив принимает следующие параметры для экспорта данных рабочего листа в видеМножество объект:
- Номер строки, номер строки первой ячейки, из которой будут экспортированы данные.
- Номер столбца, номер столбца первой ячейки, откуда будут экспортированы данные
- Количество строк, количество строк для экспорта.
- Количество столбцов, количество столбцов для экспорта.
// 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(ExportingDataFromWorksheets.class) + "Data/"; | |
// Creating a file stream containing the Excel file to be opened | |
FileInputStream fstream = new FileInputStream(dataDir + "book1.xls"); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(fstream); | |
// Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Exporting the contents of 7 rows and 2 columns starting from 1st cell | |
// to Array. | |
Object dataTable[][] = worksheet.getCells().exportArray(0, 0, 7, 2); | |
// Printing the number of rows exported | |
System.out.println("No. Of Rows Exported: " + dataTable.length); | |
// Closing the file stream to free all resources | |
fstream.close(); |