Java での作業ディレクトリの変更: 可能ですか?
Java では、現在の作業ディレクトリの概念がファイルにアクセスするために重要です。そしてリソースの管理。この言語では、System.getProperty("user.dir") を使用して現在の作業ディレクトリを取得できますが、その変更については疑問が生じます。
作業ディレクトリを動的に変更できますか?
System.setProperty() メソッドが利用できるにもかかわらず、Java で作業ディレクトリを変更することには課題が伴います。一般に信じられていることに反して、System.setProperty("user.dir", "...") を呼び出しても、作業ディレクトリは効果的にリダイレクトされません。このアプローチを使用してディレクトリを変更しようとすると、多くの場合サイレントに失敗し、開発者は困惑します。
Java が作業ディレクトリを変更できないのは、説明のつかない制限です。ハードコーディングされた相対パスを使用してファイルを開く、あなたが説明したコードは、ディレクトリを手動で指定しない限り、別のプログラムにシームレスに転送できません。
作業ディレクトリを設定する代替手段
この制限を克服するには、File(Stringparent, String child) コンストラクターの使用を検討してください。これにより、ディレクトリとファイルのパスを分離できるため、必要に応じてディレクトリを簡単に交換できるようになります。
もう 1 つのアプローチは、目的のディレクトリから Java を呼び出すスクリプトを作成するか、Java Native Interface (JNI) ネイティブ コードを利用することです。 、以前の議論で示唆されたように。ただし、Java のスタンスは依然として堅固であることに注意することが重要です。プログラムによる作業ディレクトリの変更はサポートされていません。
以上がJava は作業ディレクトリを動的に変更できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。