2012-02-03 13 views
1

私はクラスのプロジェクトを試してみるのですが、その一部として、ユーザーがいくつかのファイル(RAMディスクなど)を書くことができるようにするために "ディスク"を作成する必要があります。私はさまざまな言語を使用してきましたが、私はJavaに最も精通しています(おそらくC#を使用して時間通りに処理することができます)。私はそこに何があるのだろうと思っています。Javaを使用してWindows上で仮想ディスク(文字、共有など)を作成するにはどうすればよいですか?

私はCommons VFS、JLAN、Alfrescoを見てきましたが、私は後者の2つを使用することができますが、他のオプションがあるかどうかは疑問です。今では、私が読んでいるJava 7を見ています。新しいI/Oが役立つかもしれません。現時点で把握しなければならない主なものは、ドライブをマップする方法です。たとえば、AFAICT、Commons VFSを使用すると、FTPなどのどこかのファイルにアクセスできますが、このアクセス権をドライブ文字または共有としてマップするにはどうすればよいですか?

おかげ

更新:より明確にするために、私は何をしようとしている(一般的に)Dropboxのようなものを作成することです。私はWindowsでドライブレター/共有をしたいが、バックエンドはローカルディスク以外のもの(サーバーコンポーネントを実行するLAN上の別のマシンのようなもの)であろう。私は、少なくともデータを転送するためにバックエンドのロジックをコードする必要がありますが、それをディスクやネットワーク共有のように見えるようにWindowsに「接着」する方法はわかりません。何らかのCIFSサービスを使用しているようですそれをOSに公開することが最も理にかなっているかもしれません。

答えて

1

純粋なJavaでは、クライアント側のアプリケーションを作成することはできませんが、Windowsがマウントする方法を既に知っているサーバーアプリケーションを作成する必要があります(CIFSまたはWeb DAVなど)。 WebDAVはおそらく最も単純なものです。

あなたの投稿にDropboxが表示されました。 Dropbox私は実際には仮想ドライブやフォルダを作成するのではなく、コンテンツをローカルフォルダに複製し、そのフォルダに変更があると考えています。そのルートを選択すると、JavaはWatchServiceを処理します(tutorialで完了)。クライアント側とサーバー側の両方のコンポーネントを記述する必要がありますが、オフラインでファイルを使用できるようになります。

0

それはまだ現在のWindowsのバージョンで動作している場合は、Microsoft自身のRAMディスクドライバを試すことができます。http://support.microsoft.com/kb/257405

またはあなただけのドライブ文字が必要な場合は、substコマンドを試してみてください。

ソリューションを実際にプログラムする必要がある場合は、私が考えることができる最も簡単な方法は、独自の単純なファイルシステム(レコードストア)をエミュレートし、ユーザーがファイルを管理できるインターフェイスを提供するファイルを作成することです。私。仮想ファイルシステム

現在のWindowsのバージョンにOS Xのディスクイメージと同等のものがあるかどうかはわかりませんが、これは単純化します。

あなたが実際に必要としていることは少し不明です。

2

Callback File System製品を使用して、仮想ファイルシステムを作成し、NTFSディスク上のドライブレターまたはフォルダを介して公開することができます。ファイルシステムの操作はコードで処理され、データをクラウドに転送することができます。これは数十のクライアントが使用するシナリオです。

関連する問題