2010-11-09 50 views
6

Tôi muốn trích xuất tất cả các chuỗi (văn bản, được viết bằng "") trong hàng trăm lớp java, để đưa chúng đến một trình dịch cho một bản dịch nền tảng đa ngôn ngữ.Trích xuất các chuỗi từ các lớp Java

Có ai đó có ý tưởng về cách tôi có thể thực hiện việc này không? Bất kỳ chương trình hoặc phương pháp miễn phí đặc biệt nào?

Trả lời

5

Eclipse có tính năng "Externalize Strings" tạo tệp thuộc tính của tất cả các chuỗi trong lớp hoặc lớp. Các IDE khác có thể có một tính năng tương tự.

+1

Thật không may, trình hướng dẫn xuất hiện để hoạt động trên một tệp duy nhất, chỉ, ngay cả khi một thư mục nguồn Eclipse được chọn có chứa nhiều tệp ứng viên. – robbbert

+0

sẽ rất tuyệt nếu nó hoạt động với nhiều tệp! – Tobias

+0

OTOH, cách tiếp cận này cho phép bạn chỉ định các chuỗi không thể định địa chỉ và cung cấp cho người dịch một số ngữ cảnh, thông qua tên khóa. –

1

Bạn có thể viết chương trình để sử dụng cụm từ thông dụng để nắm bắt bất kỳ nhóm nào được bao trong chuỗi.

0

Nếu bạn có mã nguồn, hãy sử dụng tính năng chuỗi bên ngoài của Eclipse mà Dave đã đề cập.

Nếu bạn chỉ có các tệp lớp, hãy sử dụng công cụ chuỗi GNU, tìm thấy bất kỳ chuỗi chuỗi nào bên trong tệp nhị phân.

http://sourceware.org/binutils/docs/binutils/strings.html

+1

Lệnh 'strings' cũng sẽ nhận được nhiều tính năng bổ sung như tên và biến lớp. – dogbane

+0

Tôi có nguồn – Tobias

+3

Sử dụng mã nguồn ... sử dụng nguồn ... (oops sai thread) – OscarRyz

4

Nếu bạn sử dụng Eclipse IDE như bạn, điều này cũng đơn giản như việc lựa chọn dự án của bạn và từ menu ngữ cảnh chọn Nguồn/Externalise Strings.

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