Có ai quen thuộc với định dạng tài liệu RTF và phân tích cú pháp bằng bất kỳ libaries Java nào không. Cách mọi người chuẩn đã làm điều này là sử dụng RTFEditorKit trong Swing API JDK:Phân tích cú pháp tài liệu RTF bằng Java/JavaCC
nhưng nó không phải là chính xác khi nói đến phân tích tài liệu RTF. Trên thực tế, có một nhận xét trong API:
Hỗ trợ RTF không được viết bởi Nhóm xoay. Trong tương lai, chúng tôi hy vọng sẽ cải thiện hỗ trợ được cung cấp.
Tôi không nghĩ rằng tôi sẽ phải đợi cho điều này xảy ra :)
Cách tiếp cận khác thực hiện là để xác định một ngữ pháp sử dụng javacc và tạo ra một phân tích cú pháp. Điều này hoạt động tốt hơn, nhưng tôi gặp khó khăn trong việc tìm kiếm một ngữ pháp hoàn chỉnh. Tôi đã thử:
đó là ok và sau đây (đó là tốt nhất cho đến nay).
Koders RTFParserDelegate and ETranslate Grammar
Có triển khai khác nhau của ngữ pháp eTranslate về (Tôi biết Nutch API có thể sử dụng này). Có ai biết đó là ngữ pháp chính xác nhất hay liệu có cách tiếp cận tốt hơn cho điều này không?
tôi có thể bắt đầu cày thông qua các tài liệu javacc hiểu các tập tin .jj và thử nghiệm nó chống lại các tập tin RTF ... Đây là cách tiếp cận hiện tại của tôi, nhưng nó tham gia một thời gian ... bất kỳ trợ giúp sẽ được đánh giá cao
Không thể trả lời câu hỏi thực tế của bạn, nhưng có vẻ như cách tiếp cận xác thực tốt hơn (thay vì làm việc thông qua ngữ pháp) là tạo tệp thử nghiệm và xác minh rằng chúng được phân tích cú pháp chính xác. Tuy nhiên, như tôi nhớ lại, các trình phân tích cú pháp RTF được phép bỏ qua bất kỳ cấu trúc nào mà chúng không hiểu, cho phép khả năng tương thích ngược. – kdgregory
Trình phân tích cú pháp ETranslate thực sự hoạt động rất tốt khi trích xuất tài liệu RTF (99% bộ tôi có), nhưng nó không được hỗ trợ và không có sẵn từ nguồn trung tâm. Sẽ cố gắng và nhận được điều này lên trên Google Code một nơi nào đó ... không chắc chắn về giấy phép, nó chỉ cần một số sửa lỗi trong ngữ pháp tôi tin rằng ... – Jon
bạn đã thực hiện bất kỳ tiến bộ với điều này? – pvgoddijn