Las tablas en OneNote ayudan a mantener la información organizada, desde notas de reuniones y registros de datos hasta hojas de comparación rápidas. Hay ciertos casos en los que necesitas extraer texto de una tabla en OneNote de manera programática. Tal vez quieras analizar el contenido de la tabla, moverlo a una base de datos o convertirlo a otro formato.
En esta guía, te mostraremos cómo extraer texto de tablas en OneNote utilizando C#. Aprenderás a obtener texto de una tabla completa, una sola fila o incluso una celda individual utilizando ejemplos simples y fáciles de seguir.
Vamos a empezar.
¿Por qué extraer texto de tablas en OneNote?
Los desarrolladores a menudo necesitan extraer datos de tablas de OneNote para automatización, informes o integración con otros sistemas. Aquí hay algunos ejemplos del mundo real:
- Exportar resúmenes de reuniones en informes estructurados.
- Read tabular data from shared notes for analysis.
- Sincronizar tablas de OneNote con sistemas o tableros externos.
En lugar de copiar datos manualmente, Aspose.Note for .NET le permite manejar todo esto a través del código de una manera rápida, consistente y totalmente automatizada.
C# Biblioteca para Extraer Texto de Tablas de OneNote
Aspose.Note for .NET es una API robusta que permite a los desarrolladores crear, leer, editar y convertir archivos de OneNote en aplicaciones .NET. Soporta modelos de objetos ricos para acceder a elementos como páginas, texto, imágenes, esquemas y tablas. Para la extracción de texto de tablas, proporciona la clase Document, que representa un archivo de OneNote, y métodos como GetChildNodes(), que permiten a los desarrolladores localizar y extraer fácilmente elementos de tablas.
Puedes descargarlo desde la página de lanzamientos de Aspose.Note for .NET o instalarlo utilizando NuGet:
PM> Install-Package Aspose.Note
Cómo extraer texto de tablas en OneNote
Aspose.Note hace posible extraer texto de documentos de OneNote en diferentes niveles:
- La tabla completa
- Una fila específica
- Una célula individual
Vamos a revisar cada uno de estos paso a paso.

Sample Table
Para obtener más información sobre cómo extraer texto e imágenes de documentos de OneNote utilizando C#, consulta nuestra detallada guía sobre la extracción de contenido de archivos de OneNote.
1. Extraer texto de la tabla en OneNote usando C#
Podemos extraer fácilmente texto de todas las tablas disponibles en un documento de OneNote utilizando Aspose.Note for .NET. Pasaremos por el proceso de acceder a los nodos de la tabla, leer su contenido y mostrar el texto extraído en un formato legible.
Siga los pasos a continuación para extraer texto de las tablas en un documento de OneNote:
- Cargue el archivo
.oneutilizando la claseDocument. - Utilice el método
GetChildNodes<Table>()para recuperar todos los nodos de tabla. - Recorra cada tabla y extraiga su contenido de texto.
- Imprimir los resultados en la consola.
El siguiente ejemplo de código muestra cómo extraer texto de todas las tablas en un documento de OneNote.
using Aspose.Note;
// Cargue el documento en Aspose.Note.
Document document = new Document("SampleTable.one");
// Obtén una lista de nodos de tabla
IList<Table> nodes = document.GetChildNodes<Table>();
// Set table count
int tblCount = 0;
foreach (Table table in nodes)
{
tblCount++;
Console.WriteLine("Table # " + tblCount);
// Retrieve text
string text = string.Join(Environment.NewLine,
table.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;
// Print text on the output screen
Console.WriteLine(text);
}
Output
Table # 1
cell_1.1
cell_1.2
cell_1.3
cell_2.1
cell_2.2
cell_2.3
2. Extraer texto de una fila específica en una tabla de OneNote
A veces, solo necesitas extraer el texto de una fila particular en lugar de toda la tabla. Vamos a recorrer todas las tablas, luego cada fila, extrayendo el texto de manera independiente. Es útil cuando necesitas analizar o procesar los datos de la tabla fila por fila.
Puedes extraer texto fila por fila siguiendo los pasos a continuación:
- Cargue el archivo de OneNote usando la clase
Document. - Get a list of table nodes.
- Recorre cada tabla, luego cada fila.
- Extraer y mostrar texto de cada fila.
El siguiente ejemplo de código muestra cómo extraer una fila de texto de una tabla utilizando C#:
using Aspose.Note;
// Cargue el documento en Aspose.Note.
Document document = new Document("SampleTable.one");
// Obtener una lista de nodos de tabla
IList<Table> nodes = document.GetChildNodes<Table>();
// Establecer el conteo de filas
int rowCount = 0;
foreach (Table table in nodes)
{
// Iterar a través de las filas de la tabla
foreach (TableRow row in table)
{
rowCount++;
// Retrieve text
string text = string.Join(Environment.NewLine,
row.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;
// Print text on the output screen
Console.WriteLine($"Row #{rowCount}:");
Console.WriteLine(text);
}
}
Output
Row #1:
cell_1.1
cell_1.2
cell_1.3
Row #2:
cell_2.1
cell_2.2
cell_2.3
3. Extraer texto de una celda específica en una tabla
Si deseas profundizar aún más y extraer texto de una celda en particular, también puedes hacerlo. Para este propósito, recuperaremos la unidad de texto más pequeña, es decir, el contenido de cada celda. Es perfecto cuando necesitas un control detallado sobre la extracción de datos para un procesamiento o mapeo de datos posterior.
Sigue los pasos a continuación para extraer texto de una celda específica en una tabla en OneNote:
- Cargue el documento de OneNote utilizando la clase
Document. - Recuperar nodos de tabla utilizando
GetChildNodes<Table>(). - Recorra cada tabla y sus filas.
- Extraer nodos de celda usando
GetChildNodes<TableCell>(). - Extraer texto de cada celda y mostrarlo.
El siguiente ejemplo de código muestra cómo obtener el texto de una celda de una fila en una tabla usando C#:
using Aspose.Note;
// Cargue el documento en Aspose.Note.
Document document = new Document("SampleTable.one");
// Obtener una lista de nodos de tabla
IList<Table> nodes = document.GetChildNodes<Table>();
foreach (Table table in nodes)
{
// Iterar a través de las filas de la tabla
foreach (TableRow row in table)
{
// Obtener lista de nodos TableCell
IList<TableCell> cellNodes = row.GetChildNodes<TableCell>();
// Iterar a través de las celdas de la tabla
foreach (TableCell cell in cellNodes)
{
// Retrieve text
string text = string.Join(Environment.NewLine,
cell.GetChildNodes<RichText>().Select(e => e.Text)) + Environment.NewLine;
// Print text on the output screen
Console.WriteLine(text);
}
}
}
Output
cell_1.1
cell_1.2
cell_1.3
cell_2.1
cell_2.2
cell_2.3
¿Por qué usar Aspose.Note for .NET para la extracción de texto?
- Funciona completamente sin conexión sin utilizar Microsoft OneNote.
- Extracts text with formatting and structure preserved.
- Admite todos los elementos de tabla (encabezados, celdas, tablas anidadas).
- Ofrece un fuerte soporte de LINQ para filtrar y consultar contenido.
- Integración fácil con aplicaciones .NET existentes.
Ya sea que esté construyendo herramientas de análisis, scripts de automatización o convertidores de notas personalizados, Aspose.Note le brinda la flexibilidad y el control que necesita.
Puedes obtener una licencia temporal gratuita de la Aspose License Page para probar Aspose.Note for .NET sin limitaciones. Solo toma un minuto solicitarla, y podrás probar todas las funciones de la biblioteca.
Recursos Adicionales Gratuitos
- Documentación de Aspose.Note for .NET
- Referencia de API
- Aplicación gratuita de visualizador de OneNote
- Foro de Soporte
Conclusión
Extraer texto de tablas en OneNote no tiene que ser complicado. Con Aspose.Note for .NET, puedes obtener fácilmente texto de tablas enteras, filas específicas o celdas individuales utilizando solo unas pocas líneas de código C#. La API se encarga del análisis, la gestión de nodos y la traversía del contenido mientras tú te concentras en utilizar esos datos como los necesites.
Si tienes alguna pregunta o necesitas ayuda para comenzar, visita nuestro foro de soporte gratuito para conectarte con el equipo de Aspose.Note.
FAQs
Q: ¿Puedo extraer texto de una tabla específica en mi documento de OneNote?
Sí, puedes filtrar nodos de tabla utilizando LINQ o selección basada en índices para dirigirte a tablas específicas para su extracción.
Q: ¿Necesito tener Microsoft OneNote instalado para usar Aspose.Note for .NET?
No, Aspose.Note for .NET funciona de manera independiente y no requiere Microsoft OneNote ni ningún otro software externo.
Q: ¿Aspose.Note for .NET preserva la estructura de la tabla durante la extracción de texto?
Sí, preserva la estructura lógica de las tablas, permitiéndote extraer contenido de tablas completas, filas o celdas individuales mientras mantienes el orden.
Q: ¿Puedo extraer texto con formato de una tabla de OneNote?
Aspose.Note principalmente extrae texto sin formato. Sin embargo, puedes acceder y procesar objetos de texto enriquecido si necesitas detalles de formato.
Q: ¿Es Aspose.Note for .NET compatible con .NET Core y .NET 6+?
Sí, es compatible con .NET Framework, .NET Core y las últimas versiones de .NET en Windows, Linux y macOS.
