3

ファイルパスを解析してファイル名を取得する必要があります。私を混乱させているのは、windows が\区切り記号と linux として使用されている/ことです。そして、どういうわけか、提供されたファイルパスには両方の区切り記号を同時に含めることさえできます。

もちろん、私はできる:

int slash = filePath.lastIndexOf("/");
int backslash = filePath.lastIndexOf("\\");
fileName = filePath.substring(slash > backslash ? slash : backslash);

しかし、より多くの区切り文字がある場合のより良い方法はありますか? (おそらくファイルパスではありません)

4

2 に答える 2

9

Fileクラスを使用するだけです:

String fileName = new File(path).getName();

スラッシュとバック スラッシュ、および 2 つの組み合わせを処理します。

于 2013-06-10T10:36:33.740 に答える
0

使用できます

String separator =System.getProperty("path.separator");

システムセパレーターを取得します。

于 2013-06-10T10:43:08.140 に答える