java取文件名
java中获得一个文件夹中的所有文件名代码如下:
packagecom.readfile;
importjava.io.File;publicclassGetAllFiles {
publicstaticvoidmain(String[] args) {
//路径 这里写一个路径进去
String path="F:\QQ文档";
//调用方法
getFiles(path);
}
/**
* 递归获取某路径下的所有文件,文件夹,并输出
*/
publicstaticvoidgetFiles(String path) {
File file =newFile(path);
// 如果这个路径是文件夹
if(file.isDirectory()) {
// 获取路径下的所有文件
File[] files = file.listFiles();
for(inti =0; i < files.length; i++) {
// 如果还是文件夹 递归获取里面的文件 文件夹
if(files[i].isDirectory()) {
System.out.println("目录:"+ files[i].getPath());
getFiles(files[i].getPath());
}else{
System.out.println("文件:"+ files[i].getPath());
}
}
}else{
System.out.println("文件:"+ file.getPath());
}
}
}
(1)java取文件名扩展阅读:
如果想要获得当前文件中的文件名只需要String [] fileName = file.list();就可以了。
如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。
其中public static String [] getFileName(String path)是只得到当前文件中的文件名。
public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。
Ⅱ java获得文件名如1-2-3.txt并根据文件名创建文件夹1再进入1创建文件夹2,最后将3.txt放到2中
代码如下:
importjava.io.File;
importjava.io.IOException;
importjava.nio.file.Files;
importjava.nio.file.Path;
importjava.nio.file.Paths;
importjava.nio.file.StandardCopyOption;
publicclassApp{
publicstaticvoidmain(String[]args)throwsIOException{
//源文件夹路径
StringsrcDirPath="D:\temp\demo30\src";
//目标文件夹路径
StringdstDirPath="D:\temp\demo30\dst";
FilesrcDir=newFile(srcDirPath);
//遍历源文件夹
File[]files=srcDir.listFiles();
for(Filefile:files){
//获取文件名
StringfileName=file.getName();
//将文件名分割成三部分
String[]names=fileName.split("-",3);
//组合文件路径
PathdstFilePath=Paths.get(dstDirPath,names[0],names[1],names[2]);
//获取文件所在文件夹
FiledstFileDir=dstFilePath.getParent().toFile();
//如果文件所在文件夹不存在,则创建该文件夹
if(!dstFileDir.exists()){
dstFileDir.mkdirs();
}
//复制文件到目标文件夹
Files.(Paths.get(file.getAbsolutePath()),dstFilePath,StandardCopyOption.REPLACE_EXISTING);
}
System.out.println("done.");
}
}
Ⅲ Java提取文件的文件名和扩展名
public static void main(String[] args) {
String input = "a.jpg";
String[] split = input.split("[.]");
System.out.println(split[1] + "," + split[0]);
}
用字符串切割方法,但是参数接收的是正则表达式
Ⅳ Java:找出指定文件夹里的文件名!
importjava.io.File;
/*
*获取功能:
*publicString[]list():获取指定目录下的所有文件或者文件夹的名称数组
*publicFile[]listFiles():获取指定目录下的所有文件或者文件夹的File数组
*/
publicclassFileDemo{
publicstaticvoidmain(String[]args){
//指定一个目录
Filefile=newFile("e:\");
//publicString[]list():获取指定目录下的所有文件或者文件夹的名称数组
String[]strArray=file.list();
for(Strings:strArray){
System.out.println(s);
}
System.out.println("------------");
//publicFile[]listFiles():获取指定目录下的所有文件或者文件夹的File数组
File[]fileArray=file.listFiles();
for(Filef:fileArray){
System.out.println(f.getName());
}
}
}
Ⅳ java怎么获取一个目录下的所有文件名
Filefile=newFile("E:\program\work");
File[]cFile=file.listFiles();
for(inti=0;i<cFile.length;i++){
Stringname=cFile[i].getName();
System.out.println(name);
}
Ⅵ java 怎么获取一个文件的文件名
如果想要获得当前文件中的文件名只需要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.读取文件名。
使用File类
File
f
=
new
File("你存放文件的地址");
String[]
filenames
=
f.list(new
FilenameFilter()
{
accept(File
dir,
String
name)
{
if(name.endwith(".txt"))
{
return
true;
}
else
{
return
false;
}
}
});//用匿名类写了一个FilenameFilter
2.处理文件名。
上面得到一个String[]
filenames
String[]
newnames
=
new
String[filenames.length()];
for(int
i
=
0;
i
<
newnames.length();
i++)
{
int
a
=
filenames[i].lastIndexOf("_")-1);
newnames[i]=filenames[i].substring(0,a);
}
3.只要不重复的。。
使用Set
Set
s
=
new
HashSet()
;
for(int
i
=
0;
i
<
newnames.length();
i++)
{
s.add(newnames[i]);
}
String[]
newnames2
=
s.toArray();
newnames2
就是需要的String[]
Ⅷ java文件名提取
java获取文件名方法有三种代码如下展示:
// 举例:
String fName =" G:\\Java_Source\\navigation_tigra_menu\\demo1\\img\\lev1_arrow.gif ";
// 方法一:
File tempFile =new File( fName.trim());
String fileName = tempFile.getName();
System.out.println("方法一:fileName = " + fileName);
// 方法二:
fName = fName.trim();
// fileName = fName.substring(fName.lastIndexOf("/")+1);
// 或者
fileName = fName.substring(fName.lastIndexOf("\\")+1);
System.out.println("方法二:fileName = " + fileName);
// 方法三:
fName = fName.trim();
String temp[] = fName.split("\\\\"); /**split里面必须是正则表达式,"\\"的作用是对字符串转义*/
//temp[] = [G:, Java_Source, navigation_tigra_menu, demo1, img, lev1_arrow.gif]
System.out.println("temp[] = " + Arrays.toString(temp));
fileName = temp[temp.length-1];
System.out.println("方法三:fileName = " + fileName);