せっかくJavaを使うのであれば、アプリケーションをOSに依存しないで実行させたいものです。
ファイルを読んだり書いたり、ファイル操作を行う上では、ディレクトリを指定する必要が出てきます。
OSによって異なるディレクトリの区切り文字
ディレクトリ(パス)の区切り文字は、WindowsとLinux(UNIX系)では、異なります。
- Windows:\(¥マークまたはバックスラッシュ)
- Linux(Unix):/(スラッシュ)
システムに合ったディレクトリ(パス)区切り文字を使うサンプル
1 2 3 4 5 6 7 8 9 10 11 12 13 | import java.io.File; Javaアプリケーションを実行するディレクトリの1つ上のディレクトリにある「a.txt」ファイルが存在するか確認。確認結果を標準出力します。 public class FileSeparatorTest { public static void main(String[] args) { String fileName = "a.txt"; File file = new File(".." + File.separator + fileName); if(file.exists()) { System.out.println("ファイルを見つけたよ♪"); }else { System.out.println("ファイルがないよ(TT)"); } } } |
実行結果
ファイルの存在有無が出力されます。
・ファイルが存在する場合
1 | ファイルを見つけたよ♪ |
・ファイルが存在しない場合
1 | ファイルがないよ(TT) |
サンプルの解説
Javaでは、パスの区切り文字が予め用意されています。
File#separatorを使うと、実行しているシステムに合わせたパス区切り文字が取得できます。
これを利用することで、システム(OS)に依存することなく、動作することができるようになります。
システムに合った改行コードを使用する方法は・・?
システムに合った改行コードを使用する方法は、こちらを見てください。