別のパススプリットディレクトリパス

Raghavendra Bankapur:

私は、WindowsおよびLinuxベースのシステムの両方で動作しますJavaでシステムのプロパティを使用してディレクトリ・パスをお読みください。今、私は残りの部分を取得するために、パスの部分だけで、このパスを分割する必要があります。例えば。、C:\Test1\Test2\Test3\Test4

私は上記のパスを分割する必要があるC:\Test1\Test2と取得しますTest3\Test4私は、文字列と使用としてこれを取得する場合splitための不正な文字として私にエラーを与える機能"\"文字。私はこの文字をエスケープすることを計画している場合"\\"、これは、Linuxボックスに動作しない場合があります。私はLinuxとWindowsの両方で、この作業を行うことができます方法はありますか?

Sohail:

以下のアプローチを使用してください。

 //Windows
   String s = "C:\\Test1\\Test2\\Test3\\Test4";
   String[] output = s.split(("/".equals(File.separator))? File.separator : "\\\\" );
   //output: [C:, Test1, Test2, Test3, Test4]

 //Linux:
   String linuxString = "/Test1/Test2/Test3/Test4";
   String[] linuxOutput = linuxString.split(("/".equals(File.separator))? File.separator : "\\\\" );
   //output: [, Test1, Test2, Test3, Test4]

この問題を解決することを願っています。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=330350&siteId=1