Javaのリソース、URI、URL、パス、ファイルの違いは何ですか?
現在Javaコードの一部を調べています。パスは文字列として取得され、そのURLはを使用して取得されURL resource = ClassLoader.getSystemClassLoader().getResource(pathAsString);、次にが呼び出されString path = resource.getPath()、最後に実行されnew File(path);ます。 あ、そしてとへの呼び出しもURL url = resource.toURI();ありString file = resource.getFile()ます。 私は今完全に混乱しています-専門用語のせいだと思います。誰かが違いを教えてくれますか、それともダミープルーフ素材へのリンクをいくつか提供してくれますか?特にURLへのURIとファイルへのリソース?私には、それぞれ同じものであるように感じます... 違いgetFile()とは、getPath()ここで説明されていますurl.getFile()とGETPATH()の違いは何ですか?(興味深いことに、どちらも文字列を返すようです。おそらく私の心の状態に大きな影響を与えます...) さて、jarファイル内のクラスまたはパッケージを参照するロケーターがある場合、これら2つ(つまり、ファイル文字列のパス)は異なりますか? resource.toString()あなたを与えるだろうjar:file:/C:/path/to/my.jar!/com/example/(感嘆符に注意してください)すべての後に、。 JavaのURIとURLの 違いは、前者がスペースをエンコードしないことですか?Cf. Javaで競合するファイル、URI、およびURL(この回答は、2つの用語の一般的な概念の違いをかなりよく説明しています:URIが特定し、URLが特定します;) 最後に、そして最も重要なこととして、なぜFileオブジェクトが必要URLなのか。リソース()が十分でないのはなぜですか?(そしてResourceオブジェクトはありますか?) この質問が少し整理されていなければ申し訳ありません。それは私が持っている混乱を反映しています... :)