1

new IllegalArgumentException: Path component should be '/'簡単な質問:次の URI で zip ファイルシステムを作成しようとすると、なぜエラーが発生するのですか?

ファイル:E:/somedirectory/somefile

しかし、これはうまくいくようです: file:/somedirectory/somefile

2 つの異なるドライブに同じパスがあり、特定のドライブにアクセスする必要がある場合はどうすればよいですか? それとも、そもそもURIの要点を完全に見逃していますか?

4

3 に答える 3

1

Windows ボリュームを使用するパスには、次の形式を使用します。

file:///e:/somedirectory/somefile

トリプルは、ローカル ファイルの URLホスト名///を省略した結果です。比較:リモート ボリューム上のファイルにアクセスするのに実際には役に立たない場合、URI 仕様に従って有効です。file://sometherhost/e:/somedirectory/somefile

于 2012-07-27T07:08:17.343 に答える
0

たぶん、URIビルダーでそれを行う方が簡単です。私はいつもそれを使います:

URIBuilder builder = new URIBuilder();
builder.setSchema("file").setHost("anyhost").setPath("/yourpath/");
URI uri;
uri = builder.build();

あなたはあなたのURIをチェックすることができます:

System.out.println(uri.toString());

これがお役に立てば幸いです。

于 2012-07-27T07:34:10.293 に答える
0

1.バックスラッシュは、ディレクトリとファイルを指すために使用されます

2.この方法で試してみてください...

         `E:\\somedirectory\\somefile`
于 2012-07-27T07:02:19.557 に答える