ファイル パスの違い: File.separator と Slash
Windows と Unix の両方で動作するにもかかわらず、File の使用には違いがあります。 Java Path-String の区切り文字と通常の / です。
File.separator はプラットフォームに依存しないように設計されており、さまざまなオペレーティング システム間でファイル パスが正しく解釈されることが保証されます。 Windows では「」、Unix では「/」など、現在のプラットフォームに適切な区切り文字を返します。
一方、通常の / を使用すると、現在のプラットフォームが区切り文字として「/」を使用すると想定されます。セパレータ。これは Unix と Windows では機能しますが、普遍的な互換性があるわけではない可能性があります。
次の例は違いを示しています。
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)); } }
この例では、スラッシュと区切り文字の両方が期待どおりに機能します。 Unix と Windows。ただし、ファイル区切り文字として「:」を使用するプラットフォームでアプリケーションが実行される場合、スラッシュを使用するとファイル パスが正しくなくなりますが、File.separator はそれに応じて調整されます。
したがって、File.separator を使用します。クロスプラットフォームの互換性を確保し、異なるファイル パス区切り文字による潜在的な問題を回避するには、区切り文字を使用することをお勧めします。
以上がJava のファイル パス: `File.separator` と `/` を使用する必要があるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。