1

私はクラスのプロジェクトを試すことを検討しており、その一環として、ユーザーがいくつかのファイル(RAMディスクなど)を書き込めるように「ディスク」を作成する必要があります。私はさまざまな言語を使用しましたが、Javaに最も精通しています(おそらくC#を使用して、時間内にそれを実行することができます)。私はこれを行うことができるものがそこにあるのだろうかと思っています。

Commons VFS、JLAN、Alfrescoを見てきましたが、後者の2つを使用できる可能性がありますが、他にオプションがあるかどうか疑問に思っています。今私が読んでいるJava7には、役立つ可能性のある新しいI / Oが含まれています...この時点で理解する必要がある主なことは、ドライブをマップする方法です。たとえば、AFAICT、Commons VFSを使用すると、どこか(FTPなど)のファイルにアクセスできますが、このアクセスをドライブ文字として表示したり、マップできるように共有したりするにはどうすればよいですか?

ありがとう

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

4

3 に答える 3

1

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

今、投稿で Dropbox について言及しています。Dropbox 実際に仮想ドライブやフォルダを作成するとは思わないが、コンテンツをローカル フォルダにレプリケートし、そのフォルダの変更を監視している。そのルートを選択すると、Java にはそれを処理するためのWatchServiceがあります (チュートリアルを完了します)。クライアント側とサーバー側の両方のコンポーネントを作成する必要がありますが、オフラインでもファイルを利用できます。

于 2014-01-21T10:05:02.147 に答える
0

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

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

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

現在の Windows バージョンに OS X のディスク イメージに相当するものがあるかどうかはわかりません。

実際に何をする必要があるのか​​ は少し不明です。

于 2012-02-03T03:42:03.247 に答える