Hola Gabriel Gaudina
¡Bienvenido a Preguntas y respuestas de Microsoft!
Sí, es posible convertir un archivo DOC a DOCX utilizando el SDK de Microsoft Graph. Aquí tienes un ejemplo de cómo hacerlo en C#:
- Instalar el SDK de Microsoft Graph: Asegúrate de tener el SDK de Microsoft Graph instalado en tu proyecto. Puedes instalarlo usando NuGet:
Install-Package Microsoft.Graph
Autenticación: Configura la autenticación para tu aplicación. Puedes usar la autenticación basada en Azure AD.
- Código para convertir DOC a DOCX: Aquí tienes un ejemplo de cómo realizar la conversión: C#
using Microsoft.Graph;
using Microsoft.Identity.Client;
using System;
using System.IO;
using System.Net.Http.Headers;
using System.Threading.Tasks;
class Program
{
private static GraphServiceClient GetAuthenticatedGraphClient()
{
var confidentialClientApplication = ConfidentialClientApplicationBuilder
.Create("YOUR_CLIENT_ID")
.WithTenantId("YOUR_TENANT_ID")
.WithClientSecret("YOUR_CLIENT_SECRET")
.Build();
var authProvider = new ClientCredentialProvider(confidentialClientApplication);
return new GraphServiceClient(authProvider);
}
static async Task Main(string[] args)
{
var graphClient = GetAuthenticatedGraphClient();
// Leer el archivo DOC
var filePath = "path/to/your/document.doc";
var fileStream = new FileStream(filePath, FileMode.Open);
// Subir el archivo DOC a OneDrive
var uploadResult = await graphClient.Me.Drive.Root.ItemWithPath("document.doc").Content.Request().PutAsync<DriveItem>(fileStream);
// Descargar el archivo como DOCX
var downloadResult = await graphClient.Me.Drive.Items[uploadResult.Id].Content.Request(new List<Option>
{
new QueryOption("format", "docx")
}).GetAsync();
// Guardar el archivo DOCX
using (var fileStream = new FileStream("path/to/your/document.docx", FileMode.Create, FileAccess.Write))
{
await downloadResult.CopyToAsync(fileStream);
}
Console.WriteLine("Archivo convertido y guardado como DOCX.");
}
}
Este código sube un archivo DOC a OneDrive y luego lo descarga como DOCX. Asegúrate de reemplazar "YOUR_CLIENT_ID"
, "YOUR_TENANT_ID"
y "YOUR_CLIENT_SECRET"
con los valores correspondientes de tu aplicación registrada en Azure AD.
¡Espero que estos consejos ayuden a resolver el problema! Si necesitas más ayuda, estoy a tu disposición.
Saludos
Jonathan.
Si considera que la información proporcionada anteriormente ha resuelto su consulta, le agradeceríamos que la marcara como “Aceptar la respuesta si te resulta útil”. Esto nos ayuda a mantener la calidad y relevancia de las soluciones en nuestro foro.