Tôi đang thực hiện một dự án trong java có chức năng thêm tệp vào cơ sở dữ liệu và tôi muốn sử dụng các hàm winapi để chọn tệp. Tôi sẽ làm như thế nào?Làm cách nào để sử dụng các hàm winapi trong java?
Trả lời
by xa cách dễ nhất là bằng cách sử dụng Java JNA, nó đã có bản dịch từ stcalls trong.
Bạn có thể tìm thấy một hướng dẫn cơ bản cho nó (với WINAPI dụ không kém) trên JavaWorld.
Bạn cũng có thể sử dụng JNI, nhưng JNI yêu cầu bạn sử dụng các tệp tiêu đề được tạo đặc biệt để giao tiếp và tất cả đều khó khăn hơn để duy trì và sử dụng. Tuy nhiên, nó sẽ nhanh hơn một chút trong một số trường hợp.
+1 lần đầu tiên tôi nghe nói về JNA – stacker
Bạn muốn Java Native Interface - hướng dẫn này cho bạn thấy làm thế nào để thực hiện riêng của bạn, nhưng bạn có thể dễ dàng chỉ trỏ đến chức năng WinAPI - http://java.sun.com/docs/books/jni/download/jni.pdf
Dưới đây là một ví dụ tôi tìm thấy với một cách nhanh chóng của Google - không phải là trang web thú vị nhất nhưng vẫn chứng tỏ các khái niệm cũng http://edn.embarcadero.com/article/20679
Tôi đặc biệt khuyên dùng JACOB (Java COM Bridge) để sử dụng giao diện COM. http://sourceforge.net/projects/jacob-project/
Tôi đã viết một ứng dụng để nhận thông tin bài hát từ Amazon Web Services. Đó là một thư viện tốt đẹp để có.
- 1. Làm thế nào để gọi hàm WinAPI SetDllDirectory() trong Delphi?
- 2. Làm cách nào để tạo nút "Có với tất cả" bằng cách sử dụng WinAPI?
- 3. Làm cách nào để gọi các hàm Java từ C++?
- 4. Làm cách nào để sử dụng hàm round() trong C?
- 5. Làm cách nào để tạo điểm Junction bằng WinApi?
- 6. Làm cách nào để sử dụng lại các đối số trong một hàm bên trong?
- 7. Làm cách nào để sử dụng SwingWorker trong Java?
- 8. Mã hóa AES đơn giản bằng cách sử dụng WinAPI
- 9. Làm cách nào để chuyển/đánh giá các đối số hàm trong một hàm khác để sử dụng với ggplot?
- 10. Làm thế nào để bạn sử dụng Ruby trong Java?
- 11. Làm cách nào để sử dụng các hàm như CONCAT(), v.v ... trong AREL?
- 12. Làm cách nào để sử dụng các giá trị Razor trong một hàm javascript?
- 13. Cách nào để sử dụng hàm rand() trong C++?
- 14. Làm thế nào để vẽ văn bản với nền trong suốt bằng cách sử dụng c + +/WinAPI?
- 15. Làm cách nào để sử dụng hàm define_method để tạo các phương thức lớp?
- 16. Tôi làm cách nào để sử dụng Java?
- 17. Làm cách nào để gọi hàm GWT java từ Javascript?
- 18. Làm cách nào để đánh giá các hàm trong Clojure?
- 19. Java - Làm cách nào để sử dụng tệp lớp?
- 20. Làm cách nào để tách chuỗi thành các từ trong Java mà không sử dụng String.split()?
- 21. Cách "Xóa" Cửa sổ Trong suốt WinAPI
- 22. Làm cách nào để sử dụng thành phần Kleisli với các hàm trả về Xác thực?
- 23. Làm cách nào để tránh các hàm lồng nhau khi sử dụng AJAX?
- 24. Làm cách nào để sử dụng các hàm trợ giúp được tích hợp sẵn của CoffeeScript?
- 25. java cách sử dụng các lớp học trong gói khác?
- 26. Làm cách nào để sử dụng BlueCove để sử dụng Bluetooth trên MacBook với Java?
- 27. Làm cách nào để xác định các lớp nào được chương trình Java sử dụng?
- 28. Làm thế nào để sử dụng câu lệnh chuyển đổi trong các hàm R?
- 29. Sử dụng hàm tạo mẹ trong lớp con trong Java
- 30. gọi hàm java từ c bằng cách sử dụng jni
Có lý do nào bạn không muốn sử dụng trình chọn tệp được tích hợp trong Java không? – aperkins