2011-01-17 27 views
5

Tôi đã làm việc với Lucene.Net và FSDirectory một thời gian, vì vậy tôi đã quen thuộc với những điều cơ bản về làm việc với nó. Tuy nhiên, bây giờ tôi đang cố gắng viết lại một số mã khóa bằng cách sử dụng RAMDirectory khi có thể để tăng tốc sử dụng chỉ mục.Làm thế nào để viết một Lucene.Net RAMDirectory trở lại đĩa?

Tải một FSDirectory hiện có vào một thư mục RAMDirectory đủ dễ dàng, chỉ bằng cách sử dụng hàm tạo thích hợp. Tuy nhiên, tôi không thể tìm ra cách tôi viết lại nó vào đĩa nữa.

Tôi đã thấy một số đề cập đến một phương thức Directory.copy() tĩnh trong phiên bản Java, nhưng điều này dường như không tồn tại trong Lucene.Net.

Điều này có khả thi không?

Cập nhật: Hóa ra tôi đang sử dụng phiên bản cũ của Lucene.Net không hỗ trợ phương pháp này. Các "nhị phân chính thức" trên trang web chính thức của Lucene.Net dường như khá lạc hậu. Cảm ơn CVertex đã đề xuất sử dụng NuGet để tải xuống và cài đặt phiên bản mới nhất của Lucene ngay trong Visual Studio.

Trả lời

4

Directory.Copy tĩnh tồn tại như mỗi phiên bản Java

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

viên Lucene.Net.Store.Directory

Có lẽ bạn không nhìn vào đúng namespace.

+0

Thực ra tôi nghĩ mình có thể đang sử dụng một phiên bản cũ, nhưng dường như tôi không thể tìm thấy một bản sao được nén của bất kỳ thứ gì mới hơn trên http://lucene.apache.org/lucene.net/ và tôi không thể cuộc sống của tôi tìm ra cách để tải về từ svn.apache.org - nó chỉ cung cấp cho tôi danh sách thư mục (tôi có cần phải cài đặt một khách hàng SVN chỉ để tải xuống từ đó không?) – devios1

+0

có được một khách hàng svn, rùa sẽ làm công việc http://tortoisesvn.net/downloads.html – BrokenGlass

+0

ok sẽ làm - cảm ơn! – devios1

Các vấn đề liên quan