package comreadfile;
import javaioFile;public class GetAllFiles {
public static void main(String[] args) {
//路径 这里写一个路径进去
String path="F:\\QQ文档";
//调用方法
getFiles(path);
}
/
递归获取某路径下的所有文件,文件夹,并输出
/
public static void getFiles(String path) {
File file = new File(path);
// 如果这个路径是文件夹
if (fileisDirectory()) {
// 获取路径下的所有文件
File[] files = filelistFiles();
for (int i = 0; i < fileslength; i++) {
// 如果还是文件夹 递归获取里面的文件 文件夹
if (files[i]isDirectory()) {
Systemoutprintln("目录:" + files[i]getPath());
getFiles(files[i]getPath());
} else {
Systemoutprintln("文件:" + files[i]getPath());
}
}
} else {
Systemoutprintln("文件:" + filegetPath());
}
}
}
扩展资料:
如果想要获得当前文件中的文件名只需要String [] fileName = filelist();就可以了。
如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。
其中public static String [] getFileName(String path)是只得到当前文件中的文件名。
public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。
参考资料:
百度百科-Java
VB可以使用FileListBox 控件来获取指定文件夹内的所有文件名。
FileListBox 控件,在运行时,在 Path 属性指定的目录中,FileListBox 控件将文件定位并列举出来。该控件用来显示所选择文件类型的文件列表。例如,可以在应用程序中创建对话框,通过它选择一个文件或者一组文件。
以下是组合使用DriveListBox 、控件DirListBox 控件和FileListBox 控件来获取硬盘下任何一个文件夹内的文件名。
Private Sub Dir1_Change()
File1Path = Dir1Path
End Sub
Private Sub Drive1_Change()
Dir1Path = Drive1Drive
End Sub
Private Sub File1_Click()
Dim i As Long
DebugPrint "目录夹内存在" & File1ListCount & "个文件。"
End Sub
这道题主要就是利用了String类的split()方法,进行多次调用,已经帮你实现了,代码如下:
public
class
Test{
public
static
void
main(String[]
args){
String
str
=
"c:/win/good/aaatxt;d:/win/good/bbbtxt;c:/win/cccctxt;";
//得到路径数组
String[]
fileRoot
=
strsplit(";");
String[]
fileName
=
null;
for(int
i
=
0;i
<
fileRootlength;i++){
if(fileRoot[i]
!=
null){
fileName
=
fileRoot[i]split("/");
//得到最终需要的文件名
Systemoutprintln
(fileName[fileNamelength-1]);
}
}
}
}
在tc20中,一旦你成功打开一个文件,他将返回一个文件指针。
FILE fp;
fp=fopen("abcdat",文件状态(如w,r,r+));
当上面的 *** 作成功后文件指针fp就会赋予你打开文件的最基本信息!
FILE结构在Turbo C在stdioh文件中有以下的文件类型声明:
typedef struct
{
short level; /缓冲区“满”或“空”的程度/
unsigned flags; /文件状态标志/
char fd; /文件描述符(句柄)/
unsigned char hold; /如无缓冲区不读取字符/
short bsize; /缓冲区的大小/
unsigned char buffer; /数据缓冲区的位置/
unsigned ar curp; /指针,当前的指向/
unsigned istemp; /临时文件,指示器/
short token; /用于有效性检查/
}FILE;
为管理你打开的文件, *** 作系统为所有的文件创建一个打开文件信息的结构数组---文件控制块(FCB),而文件描述符就承担了访问与之对应的文件控制块的使命,他在c中就充当文件句柄。每一个文件都需要唯一的一个标识,这样才能管理若干个文件
FCB他存贮这你所有打开文件的信息,而只有通过文件句柄才能访问与之对应的FCB,从而访问你的文件
文件句柄,就是FCB结构数组的下标
所以,通过文件指针获得文件名的 *** 作路线:
FILE fp;
char fd = fp->fd;
FCB fcb;
char filiname = fcb[fd]filiname
利用FCB(文件控制块) *** 作的例子见:
>
以上就是关于java中怎样获得一个文件夹中的所有文件名全部的内容,包括:java中怎样获得一个文件夹中的所有文件名、VB中如何用filelistbox控件获取文件夹中文件名称并按顺序排列、java代码实现从路径字符串中获取文件名称等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)