假设原文件夹为g:\test,目标文件夹为g:\bat,本批处理
将会把g:\test文件夹下(包括子目录)所有同名不同后缀的文件拷贝到g:\bat目录下
且按照不同名字建立相应的文件夹,同名文件就放在对应名称的文件夹内
代码如下:
set
srcfolder=g:\test
set
desfolder=g:\bat
for
/f
"delims="
%%a
in
('dir
"%srcfolder%\"
/a-d
/b
/s')
do
(
md
"%desfolder%\%%~na"
2>nul
xcopy
/y
"%%a"
"%desfolder%\%%~na"
2>nul
)
如果想要获得当前文件中的文件名只需要String [] fileName = filelist();就可以了。如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。
其中public static String [] getFileName(String path)是只得到当前文件中的文件名。public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。
public class GetFileName
{
public static String [] getFileName(String path)
{
File file = new File(path);
String [] fileName = filelist();
return fileName;
}
public static void getAllFileName(String path,ArrayList<String> fileName)
{
File file = new File(path);
File [] files = filelistFiles();
String [] names = filelist();
if(names != null)
fileNameaddAll(ArraysasList(names));
for(File a:files)
{
if(aisDirectory())
{
getAllFileName(agetAbsolutePath(),fileName);
}
}
}
public static void main(String[] args)
{
String [] fileName = getFileName("F:\\xiaoshuo");
for(String name:fileName)
{
Systemoutprintln(name);
}
Systemoutprintln("--------------------------------");
ArrayList<String> listFileName = new ArrayList<String>();
getAllFileName("F:\\xiaoshuo",listFileName);
for(String name:listFileName)
{
Systemoutprintln(name);
}
}
}
运行时需要更改一下具体的文件夹。
用DOS命令:
(假设你的这个文件夹是c:\pdf)
dir
c:\pdf\pdf
>
c:\pdf\listtxt
运行完之后到目录下去找一个文件名是listtxt的,打开就是文件名了
按Alt+F11,打开VBA编辑器,插入一个模块,把下面的代码贴进去,按F5执行
Sub t()
Dim s As FileSearch '定义一个文件搜索对象
Set s = ApplicationFileSearch
sLookIn = "c:\" '注意路径,换成你实际的路径
sFilename = "" '搜索所有文件
sExecute '执行搜索
CellsDelete '表格清空
For i = 1 To sFoundFilesCount
Cells(i, 1) = sFoundFiles(i) '每一行第一列填写一个文件名
Next
End Sub
tree命令列目录
为什么不直接用tree命令,还能显示目录树结构。
C:\>tree /
以图形显示驱动器或路径的文件夹结构。
TREE [drive:][path] [/F] [/A]
/F 显示每个文件夹中文件的名称。
/A 使用 ASCII 字符,而不使用扩展字符。
如果想要获得当前文件中的文件名只需要String [] fileName = filelist();就可以了。如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。其中public static String [] getFileName(String path)是只得到当前文件中的文件名。public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。public class GetFileName{ public static String [] getFileName(String path) { File file = new File(path); String [] fileName = filelist(); return fileName; } public static void getAllFileName(String path,ArrayList<String> fileName) { File file = new File(path); File [] files = filelistFiles(); String [] names = filelist(); if(names != null) fileNameaddAll(ArraysasList(names)); for(File a:files) { if(aisDirectory()) { getAllFileName(agetAbsolutePath(),fileName); } } } public static void main(String[] args) { String [] fileName = getFileName("F:\\xiaoshuo"); for(String name:fileName) { Systemoutprintln(name); } Systemoutprintln("--------------------------------"); ArrayList<String> listFileName = new ArrayList<String>(); getAllFileName("F:\\xiaoshuo",listFileName); for(String name:listFileName) { Systemoutprintln(name); } }}运行时需要更改一下具体的文件夹。
以上就是关于如何获取一个文件夹里面所有文件的文件名,不要后缀名全部的内容,包括:如何获取一个文件夹里面所有文件的文件名,不要后缀名、如何获取文件夹下及其子目录下的所有文件名、如何获取某文件夹中所有子文件夹的文件名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)