java中对文件名的读取

Python014

java中对文件名的读取,第1张

多看看api

1.先通过file类获取文件列表filename[]

2.通过string类对文件名进行分析处理,例如用int

i

=

filename.indexOf("_"),然后截取subString(0,i)或者String[]

strs

=

filename.split("_"),strs[0]就是你要的名字

3怎么解决啊,你可用一个数组存放截取后的名字,写一个判断方法,如果重复了就不写进数组

其实这些问题都不难的,关键要养成多看api,多用,水平就起来了

如果想要获得当前文件中的文件名只需要String [] fileName = file.list()就可以了。如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

其中public static String [] getFileName(String path)是只得到当前文件中的文件名。public static void getAllFileName(String path,ArrayList<String>fileName)是包括当前文件及其子文件的文件名。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

public class GetFileName

{

public static String [] getFileName(String path)

{

File file = new File(path)

String [] fileName = file.list()

return fileName

}

public static void getAllFileName(String path,ArrayList<String>fileName)

{

File file = new File(path)

File [] files = file.listFiles()

String [] names = file.list()

if(names != null)

fileName.addAll(Arrays.asList(names))

for(File a:files)

{

if(a.isDirectory())

{

getAllFileName(a.getAbsolutePath(),fileName)

}

}

}

public static void main(String[] args)

{

String [] fileName = getFileName("F:\\xiaoshuo")

for(String name:fileName)

{

System.out.println(name)

}

System.out.println("--------------------------------")

ArrayList<String>listFileName = new ArrayList<String>()

getAllFileName("F:\\xiaoshuo",listFileName)

for(String name:listFileName)

{

System.out.println(name)

}

}

}

运行时需要更改一下具体的文件夹。

在java里面加载文件名分两种情况:

1、从数据库中获取之前存进去的文件名:用SQL语句取出所需对象即可。

2、从文件中获取文件名:可以用文件操作对象File来获取文件名:file.listFiles()能返回文件集合,然后遍历集合取出所需文件即可。