Nếu tôi muốn đọc từ "Words.txt" trong cùng một gói với lớp, tôi sẽ làm như thế nào? Làm đơn giản Scanner = new Scanner(new File("Words.txt"));
trả về lỗi.Java - Lấy tập tin từ cùng một gói
Trả lời
Giả sử các tập tin văn bản là trong cùng thư mục với các .class
, chứ không phải là tập tin .java
bạn có thể làm
Scanner scanner = new Scanner(getClass().getResourceAsStream("Words.txt"));
gì bạn có sẽ tìm kiếm các tập tin trong thư mục làm việc hiện hành. Khi bạn đang xây dựng chương trình của bạn, đây thường là thư mục gốc của chương trình của bạn. Khi bạn chạy nó như một chương trình độc lập, nó thường là thư mục mà chương trình được bắt đầu.
Tôi không biết nếu mọi câu trả lời chỉ dựa trên tên khác hoặc tên phương pháp chỉ thay đổi nhưng, nó là 'getClass(). GetResourceAsStream (" Words.txt ")' – Winter
@Winter dựa trên bộ nhớ không ổn định của tôi mà tôi nghĩ. Cảm ơn bạn. –
InputStream is = MyClass.class.getResourceAsStream("Words.txt");
...
hoạt động nếu bạn nhập một JAR sử dụng mã này – kommradHomer
Scanner = new Scanner(new File("/path/to/Words.txt"));
Đối số trong File() constructor, là đường dẫn tương đối với hệ thống máy ảo của bạn đang chạy trên, nó s không phụ thuộc vào gói của classe.
Nếu bạn words.txt của bạn là một nguồn lực đóng gói với chiến tranh của bạn, bạn có thể xem tại đây: Load resource from anywhere in classpath
Scanner scanner = new Scanner(getClass().getResourceAsInputStream("Words.txt"));
String s = new String();
while(scanner.hasNextLine()){
s = s + scanner.nextLine();
}
Bạn có nghĩa là 'getClass(). GetResourceAsStream (" Words.txt ")' – Winter
- 1. chạy một tập tin vbs từ java
- 2. Launch tập tin từ Java
- 3. Lấy nội dung tập tin trong tập lệnh java
- 4. Lấy danh sách tập tin từ TFS
- 5. Nhiều chủ đề đọc từ cùng một tập tin
- 6. java nio đọc dòng từ một tập tin
- 7. Lấy thông số từ tập tin thuộc tính
- 8. nhiều cronjob cùng một tập tin php
- 9. Scripting java: import class từ một tập tin bên ngoài
- 10. Lấy tập tin mới nhất Ngày cam kết từ SVN
- 11. Làm thế nào libraires java từ một tập tin EAR có thể được truy cập bởi một tập tin EAR?
- 12. Lấy một tập tin từ kho chứa thủy ngân từ xa
- 13. Truy cập cùng một ehcache từ 2 tập tin chiến tranh khác nhau
- 14. XMPP - Lấy các tin nhắn cuối cùng từ phòng chat
- 15. Đọc và Ghi vào một tập tin cùng một lúc trong java
- 16. viết lại vào cùng một tệp tin sau khi đọc từ tập tin
- 17. Cách đọc nội dung tập tin từ một tập tin?
- 18. Git tập tin định dạng gói entry
- 19. Lấy ngày sửa đổi cuối cùng của một tập tin trong C
- 20. Cách dễ nhất để lấy các tập tin của tập tin từ xa trong PHP?
- 21. java đọc tập tin từ thiết bị mạng
- 22. Lấy tên tập tin từ thư mục trong Android
- 23. Chọn một loại tập tin trong java
- 24. ASP.NET Lấy tập tin vật lý từ URL
- 25. Lấy phiên bản mới nhất của tập tin từ TFS
- 26. Không thể lấy các tập tin từ send_from_directory() trong bình
- 27. Lấy tên sản phẩm từ tập tin msi trong C#
- 28. Facelets Lấy mẫu/tập tin từ một hệ thống tập tin bên ngoài hoặc cơ sở dữ liệu
- 29. tập tin lớp học để chuyển đổi tập tin java
- 30. trừ các loại tập tin khi đóng gói một rpm
Hãy thử đặt file .txt trong thư mục gốc của dự án của bạn. Mặc dù các tệp văn bản có thể nằm trong cùng một thư mục với các tệp trong một gói cụ thể nhưng tệp này không thực sự làm cho chúng trở thành một phần của gói. Thay vào đó, bạn cần phải tải nó từ hệ thống tập tin (hoặc cách khác, từ các lọ hoặc chiến tranh.) – Marvo
Điều này làm việc; cảm ơn! –