在.NET中读取WPD(WordPerfect)文件

时间:2011-07-12 10:34:14

标签: .net interop wordperfect

我需要一个允许在.NET环境中读取WPD文件的库。

到目前为止,我只找到libwpd

这似乎是一个本机库,没有可用于.NET Interop的文档。

另一种解决方案是将命令行转换器用于另一种更常见的格式(例如RTF,HTML或ODT),但我也找不到这样的转换器。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

事实证明,Corel不提供下载的dll,必须为每个版本的WordPerfect生成它们。我在这里找到了相关信息:

.NET-Programming-Interop-Assemblies on wpuniverse.com

  1. 找到与您的WordPerfect版本相关联的* .tlb,我的位于C:\Program Files (x86)\Corel\WordPerfect Office X6\Programs\wpwin16.tlb
  2. 在VisualStudio中添加对* .tlb的引用,它将生成Interop.WordPerfect.dll文件
  3. 在您的文件中添加这样的using语句:using WordPerfect;并执行以下操作:

    PerfectScript WPScript = null;
    WPScript = new PerfectScript();
    WPScript.FileOpen(*filepath*);
    WPScript.SelectOff();
    WPScript.PosDocVeryTop();
    WPScript.SearchString(*FindText*);
    
  4. 有智能感知,上面链接到wpuniverse应该有所帮助。

答案 1 :(得分:0)

在使用可怕且不完整的PerfectScript界面​​长时间努力做这件事之后,我开发了一个自定义阅读器来将wpd文件解析为wpd文件中的大多数函数和文本。 WP_Reader是一个C#库,可以很容易地用于提取WordPerfect文档中包含的大多数内容。

但是,在您学习并理解WP6 +文件规范之前,WP_Reader对您没有多大帮助。您仍然需要编写自己的自定义标记生成器来将文件解构为有用的东西。有关如何使用库的详细介绍,请访问WPUniverse Forums

无需安装WordPerfect。

根据GNU较宽松通用公共许可证获得许可。

我知道这可能看起来像是自我推销,但5年前,除了尝试使libwpd在.NET上运行之外,根本没有任何东西可以使用。现在,任何具有相似编程技能的人都可以提取wpd文档。