Tôi muốn tạo một hệ thống tệp trong bộ nhớ đơn giản trong Java, có một thư mục gốc và có thể tạo thư mục con mới. Trong thư mục chúng ta có thể tạo các tệp mới, viết chúng, đọc từ chúng, xóa chúng và cũng đổi tên chúng. Bạn có thể vui lòng đưa ra một số lời khuyên từ nơi bắt đầu (một đoạn mã đơn giản, hoặc resouce).Hệ thống tệp trong bộ nhớ trong java
Trả lời
Bạn có thể tạo hệ thống tệp trong bộ nhớ trong java bằng gói Jimfs và java 7 NIO của Google.
Vui lòng tham khảo liên kết này. Tại đây bạn sẽ nhận được hướng dẫn mẫu: create In-memory file system in java
Nhà cung cấp hệ thống tệp tùy chỉnh phải triển khai lớp java.nio.file.spi.FileSystemProvider. Nhà cung cấp hệ thống tệp được xác định bằng lược đồ URI chẳng hạn như tệp, jar, bộ nhớ, cd.
Các liên kết dưới đây cung cấp tốt thông tin bắt đầu
http://docs.oracle.com/javase/7/docs/technotes/guides/io/fsp/filesystemprovider.html
Các liên kết dưới đây (không phải về trong hệ thống tập tin bộ nhớ) là về hệ thống tập tin ảo. Nó nói về một số vấn đề thiết kế có thể giúp bạn trong trường hợp bạn quyết định tạo hệ thống tệp riêng của mình.
http://www.flipcode.com/archives/Programming_a_Virtual_File_System-Part_I.shtml
Nhưng bạn có thể luôn luôn sử dụng đã được xây dựng và thử nghiệm code.This sẽ nhanh hơn và dễ dàng hơn để duy trì và bạn sẽ nhận được hỗ trợ trong điều kiện lỗi.
Hãy xem jimfs (Một hệ thống tập tin trong bộ nhớ cho Java 7+)
https://github.com/google/jimfs
Cũng nhìn vào
Commons ảo File System http://commons.apache.org/proper/commons-vfs/
marschall (An trong bộ nhớ thực hiện của một Hệ thống tệp JSR-203) https://github.com/marschall/memoryfilesystem
Sử dụng memoryfilesystem.
Jimfs đã được đề cập trong câu trả lời trước, nhưng hệ thống bộ nhớ xử lý nhiều hơn nữa.
Ví dụ sử dụng:
final FileSystem fs = MemoryFileSystem.newLinux().build("myfs");
final Path dir = fs.getPath("thedir");
Files.createDirectory(dir);
vv vv Sử dụng các API java.nio.file để thao tác tập tin trong này (File
sẽ không hoạt động!). Xem here để biết thêm chi tiết.
Tôi cần 'File' để làm việc trong bộ nhớ cho cả đọc và viết. Bất kỳ ý tưởng? – Jus12
- 1. Trong hệ thống tệp FUSE bộ nhớ
- 2. Docker: trong hệ thống tệp bộ nhớ
- 3. Hệ thống tệp trong bộ nhớ cho WIndows
- 4. Tạo tệp trong bộ nhớ không phải là hệ thống tệp
- 5. GPU - Ánh xạ bộ nhớ hệ thống
- 6. Mock java.io.File với Hệ thống tệp trong bộ nhớ. Có thể JimFs
- 7. Truy cập thư mục/bộ nhớ cache trong hệ thống tệp Android
- 8. Cấu trúc tệp Java trong bộ nhớ?
- 9. OLAP trong bộ nhớ có ưu điểm gì so với các hệ thống truyền thống có bộ nhớ đáng kể?
- 10. Tệp bộ nhớ cache của hệ thống tệp Linux có hiệu quả không?
- 11. Có thể gắn bộ nhớ từ xa vào hệ thống tệp cục bộ của iOS không?
- 12. gọi hệ thống tới bộ nhớ bản đồ đến một bộ mô tả tệp (mmap ngược)?
- 13. Hệ thống tệp ảo trong Perl
- 14. Giải thích hệ thống bộ nhớ đệm Magento
- 15. Tổng mức tiêu thụ bộ nhớ của hệ thống
- 16. Âm thanh hệ thống trong Java
- 17. Khung kiểm tra hệ thống trong Java
- 18. Hệ thống và xuất hiện trong java
- 19. thời gian thực 2D render vào bộ nhớ hệ thống
- 20. Hệ thống phân phối Java
- 21. Xóa bộ nhớ cache hệ thống trên android 6.0
- 22. Sử dụng hệ thống tệp cục bộ làm nguồn Flume
- 23. như thế nào một chương trình chạy trong bộ nhớ và cách bộ nhớ được xử lý bởi hệ thống
- 24. Nguồn Eclipse không đồng bộ với hệ thống tệp
- 25. lỗi đọc bộ nhớ cache đã lưu và bảng hệ thống trong khi bắt đầu Cassandra
- 26. Hệ thống tệp TreeView
- 27. Bộ nhớ đệm, Hệ thống tệp hoặc Memcached nhanh hơn/tốt hơn?
- 28. C# lấy kích thước bộ nhớ cache của tệp hệ thống
- 29. Hệ thống bỏ phiếu Java
- 30. Biến môi trường hệ thống Java
Rất tiếc, các jimfs gặp nhiều hạn chế. Đặt cược tốt nhất của bạn là sử dụng [memoryfilesystem] (https://github.com/marschall/memoryfilesystem). – fge