MS Excel proporciona la función Texto en columnas para dividir el texto en varias columnas. La división se puede basar en un espacio en blanco, una coma, un carácter especial, etc. Para automatizar la función, este artículo explica cómo realizar el texto en columnas de Excel desde sus aplicaciones Java. La guía paso a paso y el ejemplo de código le mostrarán cómo dividir texto en una columna en una hoja de cálculo de Excel.
API de Java para dividir texto en columnas en Excel
Para dividir el texto en columnas en las hojas de cálculo de Excel, usaremos Aspose.Cells for Java. Es una potente API que le permite crear, procesar y convertir archivos de Excel desde sus aplicaciones Java. Puede descargar la API o instalarla usando las siguientes configuraciones de Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>21.6</version>
</dependency>
Dividir texto en columnas en Excel usando Java
Los siguientes son los pasos para dividir texto en columnas en Excel usando Java.
- Cargue el archivo de Excel usando la clase Workbook.
- Obtenga la referencia a la hoja de trabajo donde desea dividir el texto.
- Agregue valores a las celdas (opcional).
- Cree una instancia de la clase TxtLoadOptions y especifique el carácter de división usando el método TxtLoadOptions.setSeparator(value).
- Divida el texto en columnas usando el método Worksheet.getCells().textToColumns(int fila, int columna, int totalRows, opciones TxtLoadOptions).
- Guarde el archivo de Excel usando el método Workbook.save(fileName, SaveFormat.XLSX).
El siguiente ejemplo de código muestra cómo dividir texto en columnas en una hoja de cálculo de Excel.
// Abra un Workbook.
Workbook wb = new Workbook("workbook.xlsx");
// Acceda a la primera hoja de trabajo.
Worksheet ws = wb.getWorksheets().get(0);
// Agregue el nombre de las personas en la columna A. El nombre rápido y el apellido están separados por espacios.
ws.getCells().get("A1").putValue("John Teal");
ws.getCells().get("A2").putValue("Peter Graham");
ws.getCells().get("A3").putValue("Brady Cortez");
ws.getCells().get("A4").putValue("Mack Nick");
ws.getCells().get("A5").putValue("Hsu Lee");
// Crea opciones de carga de texto con espacio como separador.
TxtLoadOptions opts = new TxtLoadOptions();
opts.setSeparator(' ');
// Divida la columna A en dos columnas usando el método TextToColumns().
// Ahora la columna A tendrá el primer nombre y la columna B tendrá el segundo nombre.
ws.getCells().textToColumns(0, 0, 5, opts);
// Guarde el Workbook en formato xlsx.
wb.save("TextToColumns.xlsx");
Producción
Obtenga una licencia de API gratuita
Puede obtener una licencia temporal para utilizar la API sin limitaciones de evaluación.
Conclusión
En este artículo, aprendió cómo implementar la función de texto a columnas de Excel usando Java. El ejemplo de código le ha mostrado cómo dividir el texto de una columna en varias columnas en unos pocos pasos. Puede explorar más sobre Aspose.Cells for Java utilizando la documentación. En caso de que tenga alguna consulta, contáctenos a través de nuestro foro.