Вот фрагмент кода F #, который может дать вам толчок к началу. Он успешно извлекает все текстовое содержимое файла .docx
, созданного Word2010, в виде строки объединенных строк:
open System
open System.IO
open System.IO.Packaging
open System.Xml
let getDocxContent (path: string) =
use package = Package.Open(path, FileMode.Open)
let stream = package.GetPart(new Uri("/word/document.xml", UriKind.Relative)).GetStream()
stream.Seek(0L, SeekOrigin.Begin) |> ignore
let xmlDoc = new XmlDocument()
xmlDoc.Load(stream)
xmlDoc.DocumentElement.InnerText
printfn "%s" (getDocxContent @"..\..\test.docx")
Чтобы заставить его работать, не забудьте упомянуть WindowsBase.dll
в своем проекте VS.