Comment lire et écrire des documents Word sur Android avec .NET MAUI

This article was translated from English: Does it need improvement?
Translated
View the article in English

.NET MAUI (Multi-platform App UI) permet aux développeurs de créer des applications natives pour Android, iOS, macOS et Windows à partir d'une seule base de code C#. Cette approche simplifie le développement et offre des performances natives sur toutes les plateformes.

Bien qu'IronWord ne dispose pas d'un package Android dédié, il fonctionne parfaitement sur Android via .NET MAUI. Cela signifie que vous pouvez créer facilement des applications qui lisent et écrivent des documents Word sur des appareils Android.

Étape 1 : Créez votre projet d'application .NET MAUI

Commencez par ouvrir Visual Studio et créer un nouveau projet d'application .NET MAUI. Ce type de projet permet de créer des applications pour plusieurs plateformes à partir d'une seule base de code.

Choisissez un nom de projet clair comme IronWordMauiAndroid pour rester organisé. Cette configuration jette les bases de la création d'une application Android native avec un minimum de code spécifique à la plateforme.

Étape 2 : Ajouter le package NuGet IronWord

IronWord peut être intégré de manière transparente à vos projets .NET grâce à son package NuGet. Pour ajouter IronWord via NuGet, cliquez avec le bouton droit sur votre projet et sélectionnez Gérer les packages NuGet. Recherchez " IronWord " et installez la dernière version stable.

Vous pouvez également l'ajouter facilement à l'aide de la console du gestionnaire de packages NuGet en exécutant la ligne suivante :

Install-Package IronWord

Étape 3 : Concevoir l'interface utilisateur dans MainPage.xaml

Pour permettre aux utilisateurs de créer et d'enregistrer des documents Word sur Android, vous concevrez une interface utilisateur simple et épurée à l'aide de XAML. Cette interface comprend :

  • Un éditeur de texte multiligne permettant aux utilisateurs de saisir ou de modifier du contenu.
  • Un bouton " Enregistrer comme document Word " qui permet d'enregistrer le texte actuel dans un fichier .docx.
  • Une étiquette d'état permettant de fournir des commentaires ou des messages d'erreur à l'utilisateur.

Voici le balisage XAML qui définit cette mise en page :

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="IronWordAndroid.MainPage">

    <VerticalStackLayout Padding="20" Spacing="15">
        <Editor x:Name="WordEditor"
                Placeholder="Enter your text..."
                AutoSize="TextChanges"
                HeightRequest="300"/>
        <Button Text="Save as Word Document" Clicked="OnSaveWordClicked"/>
        <Label x:Name="StatusLabel" FontSize="12" TextColor="Gray"/>
    </VerticalStackLayout>
</ContentPage>
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="IronWordAndroid.MainPage">

    <VerticalStackLayout Padding="20" Spacing="15">
        <Editor x:Name="WordEditor"
                Placeholder="Enter your text..."
                AutoSize="TextChanges"
                HeightRequest="300"/>
        <Button Text="Save as Word Document" Clicked="OnSaveWordClicked"/>
        <Label x:Name="StatusLabel" FontSize="12" TextColor="Gray"/>
    </VerticalStackLayout>
</ContentPage>
XML

Étape 4 : Implémenter la gestion des documents dans MainPage.xaml.cs

L'interface utilisateur étant configurée, vous pouvez maintenant ajouter une logique pour gérer l'enregistrement des documents. Dans MainPage.xaml.cs, définissez votre clé de licence IronWord dans le constructeur, puis implémentez la méthode OnSaveWordClicked.

Lorsque l'utilisateur appuie sur le bouton, l'application crée un nouveau document Word, y ajoute le texte de l'éditeur sous forme de paragraphe et enregistre le fichier. Sur Android, il est enregistré dans le dossier Téléchargements ; Sur d'autres plateformes, il utilise le répertoire cache de l'application.

Un bloc try-catch garantit que toutes les erreurs sont interceptées et affichées dans l'étiquette d'état.

Voici le code complet et fonctionnel :

using IronWord;
using IronWord.Models;
using Microsoft.Maui.Storage;
using System.Text;

namespace IronWordAndroid;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();

        // Set your IronWord license key
        License.LicenseKey = "YOUR-LICENSE-KEY";
    }

    private async void OnSaveWordClicked(object sender, EventArgs e)
    {
        try
        {
            // Create new Word document
            var document = new WordDocument();
            Paragraph paragraph = new Paragraph(new TextContent(WordEditor.Text));
            // Add basic text content
            document.AddParagraph(paragraph);

            // Generate a filename
            string fileName = $"MyWordDoc_{DateTime.Now:yyyyMMddHHmmss}.docx";

#if ANDROID
            string filePath = Path.Combine("/storage/emulated/0/Download", fileName);
#else
            string filePath = Path.Combine(FileSystem.CacheDirectory, fileName);
#endif

            // Save to path
            document.SaveAs(filePath);

            StatusLabel.Text = $"Saved to: {filePath}";
            await DisplayAlert("Success", $"File saved: {filePath}", "OK");
        }
        catch (Exception ex)
        {
            StatusLabel.Text = $"Error: {ex.Message}";
        }
    }
}
using IronWord;
using IronWord.Models;
using Microsoft.Maui.Storage;
using System.Text;

namespace IronWordAndroid;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();

        // Set your IronWord license key
        License.LicenseKey = "YOUR-LICENSE-KEY";
    }

    private async void OnSaveWordClicked(object sender, EventArgs e)
    {
        try
        {
            // Create new Word document
            var document = new WordDocument();
            Paragraph paragraph = new Paragraph(new TextContent(WordEditor.Text));
            // Add basic text content
            document.AddParagraph(paragraph);

            // Generate a filename
            string fileName = $"MyWordDoc_{DateTime.Now:yyyyMMddHHmmss}.docx";

#if ANDROID
            string filePath = Path.Combine("/storage/emulated/0/Download", fileName);
#else
            string filePath = Path.Combine(FileSystem.CacheDirectory, fileName);
#endif

            // Save to path
            document.SaveAs(filePath);

            StatusLabel.Text = $"Saved to: {filePath}";
            await DisplayAlert("Success", $"File saved: {filePath}", "OK");
        }
        catch (Exception ex)
        {
            StatusLabel.Text = $"Error: {ex.Message}";
        }
    }
}
Imports IronWord
Imports IronWord.Models
Imports Microsoft.Maui.Storage
Imports System.Text

Namespace IronWordAndroid

	Partial Public Class MainPage
		Inherits ContentPage

		Public Sub New()
			InitializeComponent()

			' Set your IronWord license key
			License.LicenseKey = "YOUR-LICENSE-KEY"
		End Sub

		Private Async Sub OnSaveWordClicked(ByVal sender As Object, ByVal e As EventArgs)
			Try
				' Create new Word document
				Dim document = New WordDocument()
				Dim paragraph As New Paragraph(New TextContent(WordEditor.Text))
				' Add basic text content
				document.AddParagraph(paragraph)

				' Generate a filename
				Dim fileName As String = $"MyWordDoc_{DateTime.Now:yyyyMMddHHmmss}.docx"

#If ANDROID Then
				Dim filePath As String = Path.Combine("/storage/emulated/0/Download", fileName)
#Else
				Dim filePath As String = Path.Combine(FileSystem.CacheDirectory, fileName)
#End If

				' Save to path
				document.SaveAs(filePath)

				StatusLabel.Text = $"Saved to: {filePath}"
				Await DisplayAlert("Success", $"File saved: {filePath}", "OK")
			Catch ex As Exception
				StatusLabel.Text = $"Error: {ex.Message}"
			End Try
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Étape 5 : Exécutez votre application sur Android

Déployez votre application sans effort sur un émulateur Android ou un appareil physique directement depuis Visual Studio. Cela vous permet de tester rapidement des fonctionnalités essentielles telles que l'ouverture de documents Word, la modification de leur contenu et l'enregistrement des modifications.

L'intégration du sélecteur de fichiers natif d'Android offre une expérience utilisateur fluide et familière, améliorant ainsi l'ergonomie globale.

Comme IronWord fonctionne entièrement dans l'environnement .NET, aucun SDK supplémentaire ni dépendance spécifique à la plateforme n'est nécessaire, ce qui simplifie le développement, la maintenance et la distribution de votre application.

Questions Fréquemment Posées

Qu'est-ce qu'IronWord ?

IronWord est une bibliothèque développée par Iron Software qui permet aux développeurs de travailler avec des documents Word dans leurs applications, y compris les applications Android utilisant .NET MAUI.

Comment puis-je intégrer IronWord dans une application Android ?

Vous pouvez intégrer IronWord dans votre application Android en suivant les instructions de configuration sur le site Web de Iron Software, qui vous guident pour ajouter la bibliothèque à votre projet .NET MAUI.

Quels sont les avantages de l'utilisation de IronWord pour le développement Android ?

IronWord offre un moyen simple et efficace de lire, écrire et manipuler des documents Word dans les applications Android, en tirant parti de la puissance de .NET MAUI pour un développement multiplateforme fluide.

IronWord peut-il gérer des documents Word complexes ?

Oui, IronWord est conçu pour gérer des documents Word complexes, y compris ceux avec des formats avancés et des éléments intégrés, ce qui en fait un choix robuste pour les développeurs.

IronWord est-il compatible avec .NET MAUI ?

Oui, IronWord est entièrement compatible avec .NET MAUI, permettant aux développeurs de créer des applications multiplateformes qui incluent des capacités de traitement de documents Word.

Quels formats de fichiers IronWord peut-il traiter ?

IronWord travaille principalement avec les formats de documents Word tels que DOCX et DOC, offrant une fonctionnalité complète pour lire et écrire ces fichiers.

IronWord prend-il en charge la conversion de documents sur Android ?

IronWord prend en charge les fonctionnalités de conversion de documents, permettant aux développeurs de convertir des documents Word en d'autres formats au besoin dans des applications Android.

Y a-t-il une version d'essai gratuite disponible pour IronWord ?

Oui, Iron Software propose une version d'essai gratuite de IronWord, permettant aux développeurs d'explorer ses fonctionnalités et sa fonctionnalité avant de s'engager à l'achat.

Quel type de support est disponible pour les utilisateurs de IronWord ?

Iron Software fournit un support complet pour les utilisateurs de IronWord, y compris la documentation, des didacticiels et une équipe de support dédiée pour aider en cas de problèmes.

IronWord peut-il être utilisé pour créer des modèles Word sur Android ?

Oui, IronWord peut être utilisé pour créer et travailler avec des modèles Word, le rendant idéal pour les applications nécessitant la génération de documents modélisés sur des appareils Android.

Kye Stuart
Rédacteur technique

Kye Stuart fusionne la passion du codage et l'habileté rédactionnelle chez Iron Software. Éduqué au Yoobee College en déploiement de logiciels, ils transforment maintenant des concepts technologiques complexes en contenu éducatif clair. Kye valorise l'apprentissage tout au long de la vie et relève de nouveaux dé...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 32,629 | Version : 2026.2 vient de sortir