Chcę utworzyć prosty system plików w pamięci w Javie, który ma jeden katalog główny i może utworzyć nowy podkatalog. W katalogu możemy tworzyć nowe pliki, zapisywać je, czytać, usuwać, a także zmieniać ich nazwy. Czy możesz podać kilka wskazówek od czego zacząć (prosty kod lub resouce).System plików w pamięci w java
Odpowiedz
Możesz utworzyć system plików In-memory w java przy użyciu pakietu Jimfs i java 7 NIO Google.
Odsyłam ten link. Oto przykładowy samouczek: create In-memory file system in java
Niestandardowy dostawca systemu plików musi implementować klasę java.nio.file.spi.FileSystemProvider. Dostawca systemu plików jest identyfikowany za pomocą schematu URI, takiego jak plik, jar, pamięć, cd. poniżej
Linki te dostarczają dobrych informacji wyjściowych
http://docs.oracle.com/javase/7/docs/technotes/guides/io/fsp/filesystemprovider.html
Link poniżej (nie chodzi o system plików w pamięci) wynosi około wirtualnego systemu plików. Mówi o pewnych problemach z projektowaniem, które mogą ci pomóc na wypadek, gdybyś zdecydował się stworzyć własny system plików.
http://www.flipcode.com/archives/Programming_a_Virtual_File_System-Part_I.shtml
Ale zawsze można używać już zbudowane i przetestowane code.This będzie szybszy i łatwiejszy w utrzymaniu i otrzymasz wsparcie w stanach awaryjnych.
Spójrz na jimfs (system plików w pamięci dla Java 7+)
https://github.com/google/jimfs
zajrzeć także do
Gmin Wirtualny system plików http://commons.apache.org/proper/commons-vfs/
marschall (implementacja pamięci w postaci System plików JSR-203) https://github.com/marschall/memoryfilesystem
Użyj memoryfilesystem.
Jimfs został wymieniony w poprzedniej odpowiedzi, ale system plików pamięci obsługuje znacznie więcej.
Przykład użycia:
final FileSystem fs = MemoryFileSystem.newLinux().build("myfs");
final Path dir = fs.getPath("thedir");
Files.createDirectory(dir);
itp itd. Za pomocą API java.nio.file manipulować plików w tym (File
nie będzie działać!). Aby uzyskać więcej informacji, patrz here.
Potrzebuję 'File' do pracy w pamięci zarówno do czytania, jak i pisania. Jakieś pomysły? – Jus12
Niestety, jimfs ma kilka ograniczeń. Najlepiej jest użyć [system plików pamięci] (https://github.com/marschall/memoryfilesystem). – fge