How to Read and Write Word Documents on Android in .NET MAUI

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

.NET MAUI (Multi-platform App UI) ermöglicht es Entwicklern, native Apps für Android, iOS, macOS und Windows mit einer einzigen C#-Codebasis zu erstellen. Dieser Ansatz vereinfacht die Entwicklung und liefert native Leistung auf allen Plattformen.

Obwohl IronWord kein spezielles Android-Paket hat, funktioniert es über .NET MAUI reibungslos auf Android. Das bedeutet, dass Sie Apps erstellen können, die Word-Dokumente auf Android-Geräten einfach lesen und schreiben.

class="hsg-featured-snippet">

Wie man IronWord auf Android in .NET MAUI verwendet

  1. Erstellen Sie ein .NET MAUI App-Projekt
  2. Laden Sie die C#-Bibliothek herunter, um Word-Dokumente auf Android zu bearbeiten
  3. Gestalten Sie die Benutzeroberfläche in MainPage.xaml
  4. Implementieren Sie die Dokumentenverarbeitung in MainPage.xaml.cs
  5. Führen Sie Ihre App auf Android aus

Schritt 1: Erstellen Sie Ihr .NET MAUI App-Projekt

Beginnen Sie mit dem Öffnen von Visual Studio und dem Erstellen eines neuen .NET MAUI App-Projekts. Dieser Projekttyp unterstützt das Erstellen von Apps für mehrere Plattformen aus einer einzigen Codebasis.

Wählen Sie einen klaren Projektnamen wie IronWordMauiAndroid, um organisiert zu bleiben. Diese Einrichtung schafft die Grundlage, um eine native Android-App mit minimalem plattformspezifischen Code zu entwickeln.

Schritt 2: Fügen Sie das IronWord NuGet-Paket hinzu

IronWord kann nahtlos in Ihre .NET-Projekte über das NuGet-Paket integriert werden. Um IronWord über NuGet hinzuzufügen, klicken Sie mit der rechten Maustaste auf Ihr Projekt und wählen Sie NuGet-Pakete verwalten. Suchen Sie nach „IronWord“ und installieren Sie die neueste stabile Version.

Alternativ können Sie es auch einfach über die NuGet-Paket-Manager-Konsole hinzufügen, indem Sie diese Zeile ausführen:

Install-Package IronWord

Schritt 3: Gestalten Sie die Benutzeroberfläche in MainPage.xaml

Um den Benutzern die Möglichkeit zu geben, Word-Dokumente auf Android zu erstellen und zu speichern, gestalten Sie eine einfache und saubere Benutzeroberfläche mit XAML. Dieses Interface beinhaltet:

  • Einen mehrzeiligen Texteditor, in dem Benutzer Inhalte eingeben oder bearbeiten können.
  • Eine „Speichern als Word-Dokument“-Schaltfläche, die das Speichern des aktuellen Textes in eine .docx-Datei auslöst.
  • Ein Statuslabel, um dem Benutzer Feedback oder Fehlermeldungen zu geben.

Hier ist das XAML-Markup, das dieses Layout definiert:

<?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

Schritt 4: Implementieren Sie die Dokumentenverarbeitung in MainPage.xaml.cs

Nachdem die Benutzeroberfläche eingerichtet ist, können Sie nun die Logik zum Speichern von Dokumenten hinzufügen. In MainPage.xaml.cs setzen Sie Ihren IronWord-Lizenzschlüssel im Konstruktor und implementieren dann die Methode OnSaveWordClicked.

Wenn die Schaltfläche getippt wird, erstellt die App ein neues WordDocument, fügt den Text aus dem Editor als Absatz hinzu und speichert die Datei. Auf Android wird sie im Downloads-Ordner gespeichert; auf anderen Plattformen verwendet sie das Cache-Verzeichnis der App.

Ein try-catch-Block stellt sicher, dass alle Fehler abgefangen und im Statuslabel angezeigt werden.

Hier ist der vollständige funktionierende Code:

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

Schritt 5: Führen Sie Ihre App auf Android aus

Stellen Sie Ihre Anwendung mühelos auf einem Android-Emulator oder einem physischen Gerät direkt aus Visual Studio bereit. Dies ermöglicht es Ihnen, grundlegende Funktionen wie das Öffnen von Word-Dokumenten, das Bearbeiten ihrer Inhalte und das Speichern von Änderungen schnell zu testen.

Die Integration des nativen Android-Dateiauswahlers sorgt für ein nahtloses und vertrautes Benutzererlebnis und verbessert die allgemeine Benutzerfreundlichkeit.

Da IronWord vollständig in der .NET-Umgebung läuft, sind keine zusätzlichen SDKs oder plattformspezifischen Abhängigkeiten erforderlich – was Ihre App einfacher zu entwickeln, zu pflegen und zu vertreiben macht.

Häufig gestellte Fragen

Was ist IronWord?

IronWord ist eine von Iron Software entwickelte Bibliothek, die es Entwicklern ermöglicht, mit Word-Dokumenten in ihren Anwendungen zu arbeiten, einschließlich Android-Apps mit .NET MAUI.

Wie kann ich IronWord in eine Android-Anwendung integrieren?

Sie können IronWord in Ihre Android-Anwendung integrieren, indem Sie den Einrichtungshinweisen auf der Iron Software-Website folgen, die Sie durch das Hinzufügen der Bibliothek zu Ihrem .NET MAUI-Projekt führen.

Was sind die Vorteile der Verwendung von IronWord für die Android-Entwicklung?

IronWord bietet eine einfache und effiziente Möglichkeit, Word-Dokumente in Android-Anwendungen zu lesen, zu schreiben und zu manipulieren, wobei die Leistungsfähigkeit von .NET MAUI für eine nahtlose plattformübergreifende Entwicklung genutzt wird.

Kann IronWord komplexe Word-Dokumente verarbeiten?

Ja, IronWord ist dafür ausgelegt, komplexe Word-Dokumente zu verarbeiten, einschließlich solcher mit fortgeschrittener Formatierung und eingebetteten Elementen, was es zu einer robusten Wahl für Entwickler macht.

Ist IronWord mit .NET MAUI kompatibel?

Ja, IronWord ist vollständig mit .NET MAUI kompatibel, wodurch Entwickler plattformübergreifende Anwendungen erstellen können, die Word-Dokument-Verarbeitungskapazitäten einschließen.

Welche Dateiformate kann IronWord verarbeiten?

IronWord arbeitet hauptsächlich mit Word-Dokumentformaten wie DOCX und DOC und bietet umfassende Funktionalitäten zum Lesen und Schreiben dieser Dateien.

Unterstützt IronWord die Dokumentenkonvertierung auf Android?

IronWord unterstützt Funktionen zur Dokumentenkonvertierung, die es Entwicklern ermöglichen, Word-Dokumente bei Bedarf innerhalb von Android-Anwendungen in andere Formate umzuwandeln.

Gibt es eine Testversion von IronWord?

Ja, Iron Software bietet eine kostenlose Testversion von IronWord an, damit Entwickler dessen Funktionen und Features erkunden können, bevor sie einen Kauf tätigen.

Welche Art von Unterstützung steht IronWord-Benutzern zur Verfügung?

Iron Software bietet umfassende Unterstützung für IronWord-Benutzer, einschließlich Dokumentation, Tutorials und einem speziellen Support-Team, das bei allen Problemen hilft.

Kann IronWord zum Erstellen von Word-Vorlagen auf Android verwendet werden?

Ja, IronWord kann verwendet werden, um mit Word-Vorlagen zu erstellen und zu arbeiten, was es ideal für Anwendungen macht, die eine templatierte Dokumentenerstellung auf Android-Geräten erfordern.

Kye Stuart
Technischer Autor

Kye Stuart verbindet Leidenschaft für das Programmieren und Schreibfähigkeiten bei Iron Software. Nach der Ausbildung am Yoobee College in Software-Bereitstellung transformieren sie nun komplexe technische Konzepte in klares Bildungspotenzial. Kye legt Wert auf lebenslanges Lernen und stellt sich neuen technischen Herausforderungen.

Außerhalb der Arbeit ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 25,807 | Version: 2025.11 gerade veröffentlicht