如何将 Lucene.Net RAMDirectory 写回磁盘?

发布于 2024-10-12 04:57:22 字数 481 浏览 3 评论 0原文

我使用 Lucene.Net 和 FSDirectory 已经有一段时间了,所以我熟悉使用它的基础知识。不过,我现在尝试使用 RAMDirectory 重写一些关键代码,以加快索引的使用速度。

将现有 FSDirectory 加载到 RAMDirectory 中非常简单,只需使用适当的构造函数即可。但是,我似乎不知道如何将其再次写回磁盘。

我在 Java 版本中看到过一些关于静态 Directory.copy() 方法的提及,但这似乎在 Lucene.Net 中不存在。

这可能吗?

更新:原来我使用的是不支持此方法的旧版本 Lucene.Net。 Lucene.Net 官方网站上的“官方二进制文件”显然已经过时了。感谢 CVertex 建议使用 NuGet 在 Visual Studio 中下载并安装最新版本的 Lucene。

I have been working with Lucene.Net and FSDirectory for some time now, so I am familiar with the basics of working with it. However, I am now attempting to rewrite some key code by using RAMDirectory's when possible to speed up index use.

Loading an existing FSDirectory into a RAMDirectory is easy enough, just by using the appropriate constructor. However, I can't seem to figure out how I write it back to disk again.

I've seen some mention of a static Directory.copy() method in the Java version, but this doesn't seem to exist in Lucene.Net.

Is this possible?

Update: Turns out I was using an old version of Lucene.Net that didn't support this method. The "official binaries" on the official Lucene.Net site are apparently quite out of date. Thanks to CVertex for suggesting using NuGet to download and install the latest version of Lucene right within Visual Studio.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苍暮颜 2024-10-19 04:57:22

Directory.Copy 静态存在于 Java 版本

public static void Copy(Lucene.Net.Store.Directory src, Lucene.Net.Store.Directory dest, bool closeDirSrc)

Lucene.Net.Store.Directory 的成员

中也许您没有在正确的命名空间中查找。

Directory.Copy static exists as per the Java version

public static void Copy(Lucene.Net.Store.Directory src, Lucene.Net.Store.Directory dest, bool closeDirSrc)

Member of Lucene.Net.Store.Directory

Perhaps you're not looking in right namespace.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文