Java パスにおける File.separator とスラッシュ (/) の違いを理解する
Java では、パス区切り文字を指定する方法が 2 つあります: 直接的なスラッシュ (/) を使用するか、File.separator クラスを利用します。どちらの方法も Windows と Unix システムでシームレスに動作するように見えますが、それらの本質的な違いを理解することが重要です。
File.separator の場合
答えは予測不可能な部分にあります。コンピューティングの性質。その間 。と / は今日では広く受け入れられているパス区切り文字のように見えますが、将来のプラットフォームでは大幅に異なる規則が採用される可能性があります。たとえば、仮想の「暗号的な」プラットフォームでは、ファイル区切り文字として「:」文字を利用する可能性があります。
File.separator をコードに組み込むことで、そのようなプラットフォームの奇妙な点にシームレスに適応できます。 JVM はローカル プラットフォームの規則を細心の注意を払い、基盤となるオペレーティング システムに関係なくパスが正しく解釈されるようにします。
使用例:
この概念を説明するために、次のことを考えてみましょう。次の Java コード:
public class SlashTest { @Test public void slash() throws Exception { File file = new File("src/trials/SlashTest.java"); assertThat(file.exists(), is(true)); } @Test public void separator() throws Exception { File file = new File("src" + File.separator + "trials" + File.separator + "SlashTest.java"); assertThat(file.exists(), is(true)); } }
slash() と separator() の両方のテストが正常に成功し、これが示されています。どちらのアプローチでも有効なファイル パスが得られるということです。ただし、 separator() メソッドはプラットフォームの独立性を確保し、非標準のパス区切り規則を採用する可能性のある将来のオペレーティング システムに適切に適応します。
以上がJava パス: File.separator とスラッシュ (/): どちらを使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。