Schnellste Weg, um programmgesteuert ersetzen von text in einem Word-Dokument
Ist die Aufgabe zu ersetzen, die bestimmte Schlüsselwörter in einem Word-Dokument verwenden .NET. Was wäre der Schnellste und zuverlässigste Weg, um es Beibehaltung der ursprünglichen Formatierung und Struktur der Dokumente?
- Muss es sein .NET? Wort hat eine voll funktionsfähige makro-Sprache (Visual Basic für Anwendungen), werde dies tun. Sie können sogar es, um ein makro aufzuzeichnen, die für Sie in VBA. Kombinieren Sie dies mit der mailmerge-Funktionalität, und fertig. Wenn Sie wirklich brauchen, zu verwenden .NET, Sie können ziemlich leicht mit der hand konvertieren VBA .NETTO-und OLE-Automation. Oder brauchen Sie, um dies zu tun, ohne Word installiert? Oh. und was die "Schnellste"? Schnellste zu implementieren? Schnellste Leistung, die ein einzelnes Dokument? Schnellste Leistung auf mehrere Dokumente?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie word installiert ist, dann ist es ziemlich trivial.
Verweis auf die Word-doc-assembly aus dem GAC. Sie können laden Sie ein word-Dokument und ersetzen von Daten in es.
Dies ist eine app, die ich hier habe, um word-Dokumente drucken, indem Sie in den client-Namen und so. (ausgeschnitten und eingefügt Abschnitte)
^Dieser Teil funktioniert die suchen/ersetzen. Die Liste der ReplacerSearch (wow schlechten Namen) ist nur zwei Eigenschaften, Finden, Ersetzen. Zu finden ist der text zu finden, Ersetzen Sie den text zu ersetzen.
Dann der code unten, basierend auf einem angegebenen Dateinamen (Pfad/name) erstellt eine Instanz von word (glaube ich) und das Dokument öffnet, nicht den Ersatz, und dann können Sie speichern oder drucken oder was auch immer.
Hoffe, das hilft.
Den neuen Word-Dateien sind im wesentlichen XML-Dokumente. Sie können öffnen Sie Sie wie normale Dateien in einer Sprache wie python, und suchen Sie dann nach, was Begriffe, die Sie wan zu ersetzen. Sobald Sie Sie finden, es ist nur eine Sache zu ändern, und speichern Sie die Datei.
Dieser konnte wahrscheinlich gemacht werden, die den String-Bibliothek, wenn es möglicherweise eine einfachere Möglichkeit, die sich speziell an XML-Dokumente.
Edit: Gleiche Methode sollte die Arbeit, es zu tun in .NET, nur bemerkt, dass der tag jetzt.
Haben Sie einen Blick auf die mit MS-Word
Mail Merge
- Funktionalität, es war für diesen Zweck konzipiert.Haben Sie einen Blick auf http://support.microsoft.com/kb/301659