-1

以下のコードを使用して、インターネット上のリモートの場所から適切なファイルを読み取ることはできますか?

InputStream is = getClass().getResourceAsStream("/filename.properties");
Properties pro = new Properties();
pro.load(is);
// ...

/filename.propertiesin を のようなリモート パスに置き換えることはできます192.168.173.238/D:/war/filename.propertiesか? はいの場合、どのようにパスを指定すればよいですか? このコードは Apache Tomcat で実行されています。

4

2 に答える 2

2

URL で利用できる場合 (Web ブラウザのアドレス バーに入力する場合など)、URL#openStream()またはを使用しますURLConnection#getInputStream()

InputStream is = new URL(url).openStream();

ローカル ディスク ファイル システム パス (ディスク エクスプローラーのアドレス バーに入力する場合など) で使用できる場合は、FileInputStream.

InputStream is = new FileInputStream(path);

そのような単純な。

次の質問は、おそらく「正しい URL またはディスク ファイル システム パスは?」というものになるでしょう。. これは、これまでに提供された情報に基づいて回答することはできません。

于 2013-06-07T11:36:21.703 に答える
1

こんにちは、以下のコードを使用して、インターネットのリモートの場所から適切なファイルを読み取ることができますか。

おそらくそうではありません。これは、CLASSPATH で使用可能なプロパティ ファイルを読み取るためにのみ使用できます。RMI コードベース機能や URLClassLoaders などを使用していない限り、CLASSPATH にはネットワーク ロケーションが含まれません。

getResourceAsStream()あなたは実際に何のためにあるのか理解していないようです。

于 2013-06-07T08:17:02.077 に答える