2015-02-02 3 views
-1

Я пытаюсь решить следующую проблему.Запрос операции с файлом Java

  1. У меня есть два каталога. Предположим, что/x и/y.

  2. Я хочу, чтобы все операции чтения файлов выполнялись в/x, и все операции записи выполнялись в/y. Допустим, если программа java пытается прочитать файл /a/b.xml с помощью File API, он должен напрямую перейти к/x и выполнить поиск/x/a/b/c. Аналогично, если программа пытается написать /a/b.xml, она должна непосредственно писать в/y.

Возможно ли реализовать на Java?

+0

Соответственно, создайте соответствующие имена. в чем именно проблема?: NB Соединение с NIO ускользает от меня. – EJP

ответ

0
public File getFileToReadFrom(String suffix) { 
    return new File("/x" + suffix); 
} 

public File getFileToWriteTo(String suffix) { 
    return new File("/y" + suffix); 
} 

Эти методы могут также возвращать InputStream и OutputStream, или чтения и Writer, в зависимости от того, что вы хотите для чтения/записи.

Если вы хотите автоматически сделать все существующие записи в любом файле, перейдите на /x, и все существующие чтения из любого файла перейдут на /y, то нет, это невозможно.

+0

На самом деле, что я хочу, это своего рода «перехватчик», который может перенаправлять операции чтения и записи без того, чтобы программа не знала об этом. Можем ли мы иметь один такой перехватчик для JVM? Можем ли мы использовать для этой цели пользовательский FileSystemProvider? – user2032118

+0

Нет, это невозможно. –

Смежные вопросы