GVKun编程网logo

php获取目录下的文件 文件名(php获取目录下的文件 文件名和文件名)

24

对于想了解php获取目录下的文件文件名的读者,本文将提供新的信息,我们将详细介绍php获取目录下的文件文件名和文件名,并且为您提供关于33.1File获取目录下的所有文件及子目录、Golang获取目录

对于想了解php获取目录下的文件 文件名的读者,本文将提供新的信息,我们将详细介绍php获取目录下的文件 文件名和文件名,并且为您提供关于33.1 File 获取目录下的所有文件及子目录、Golang获取目录下的文件及目录信息操作、Java 获取目录下的所有文件、Java 获取目录以及子目录下的 sql 文件的有价值信息。

本文目录一览:

php获取目录下的文件 文件名(php获取目录下的文件 文件名和文件名)

php获取目录下的文件 文件名(php获取目录下的文件 文件名和文件名)

说明

这个是扫描一个项目的文件目录下的文件名
然后进行比较如果存在返回true

        $file = scandir('../storage/framework/sessions');
        if (in_array(session()->getId(),$file)){
          return  dd('ok');
        }

33.1 File 获取目录下的所有文件及子目录

33.1 File 获取目录下的所有文件及子目录

重要获取功能
String[] list() 返回当前路径下所有的文件和文件夹名称
      //注意:只有指向文件夹的File对象才可以调用该方法(指向文件的file对象使用list会报错npe)
File[] listFiles() //获取的是file对象,可以再使用file的get等方法拿到需要的东西。
static File[] listRoots() //返回的是所有盘符

 public class FileDemo3重要获取功能 {

public static void main(String[] args) {
        listFileMethod();
//        listMethod();
      System.out.println("-----------");
      listRootsMethod(); } private static void listRootsMethod() { File[] fs = File.listRoots(); for(File fn : fs) { System.out.println(fn); } } private static void listFileMethod() { File f = new File("D:\\java\\demo\\demo001"); File[] fs = f.listFiles(); for (File fn :fs) { // System.out.println(fn.getName()); System.out.println(fn); } } private static void listMethod() { File f = new File("D:\\java\\demo\\demo001"); // System.out.println(f.getAbsolutePath()); String[] fs = f.list(); // System.out.println(fs); for(int i=0;i<fs.length;i++) { System.out.println(fs[i]); } } }

 

输出

 

Golang获取目录下的文件及目录信息操作

Golang获取目录下的文件及目录信息操作

一、获取当前目录下的文件或目录信息(不包含多级子目录)

func main() {
 pwd,_ := os.Getwd()
 //获取文件或目录相关信息
 fileInfoList,err := ioutil.ReadDir(pwd)
 if err != nil {
 log.Fatal(err)
 }
 fmt.Println(len(fileInfoList))
 for i := range fileInfoList {
 fmt.Println(fileInfoList[i].Name()) //打印当前文件或目录下的文件或目录名
 }
}

二、获取当前目录下的文件或目录名(不包含多级子目录)

package main 
import (
 "os"
 "io/ioutil"
 "log"
 "fmt"
 "path/filepath"
)
 
func main() {
 pwd,_ := os.Getwd()
 
 //获取当前目录下的文件或目录名(包含路径)
 filepathNames,err := filepath.Glob(filepath.Join(pwd,"*"))
 if err != nil {
 log.Fatal(err)
 }
 
 for i := range filepathNames {
 fmt.Println(filepathNames[i]) //打印path
 } 
}

三、获取当前文件或目录下的所有文件或目录信息(包括子目录)

package main 
import (
 "os"
 "io/ioutil"
 "log"
 "fmt"
 "path/filepath"
)
 
func main() {
 pwd,_ := os.Getwd() 
 
 //获取当前目录下的所有文件或目录信息
 filepath.Walk(pwd,func(path string, info os.FileInfo, err error) error{
 fmt.Println(path) //打印path信息
 fmt.Println(info.Name()) //打印文件或目录名
 return nil
 })
}

补充:Golang ioutil.ReadDir 读取目录下的内容

ioutil中提供了一个非常翻遍的函数函数ReadDir,他读取目录并返回排好序的文件以及子目录名([]os.FileInfo)

example:编写程序输出某目录下的所有文件。

package main
import (
  "io/ioutil"
  "fmt"
  "os"
)
func listAll(path string, curHier int) {
  readerInfos ,err := ioutil.ReadDir(path)
  if err != nil {
    fmt.Println(err)
    return
  }
  for _, info := range readerInfos {
    if info.IsDir() {
      for tmpheir := curHier; tmpheir >0; tmpheir-- {
        fmt.Printf("|\t")
      }
      fmt.Println(info.Name(),"\\")
      listAll(path + "\\" + info.Name(),curHier+1)
    }else {
      for tmpheir := curHier ;tmpheir >0; tmpheir-- {
        fmt.Printf("|\t")
      }
      fmt.Println(info.Name())
    }
  }
}
func main() {
  dir := os.Args[1]
  listAll(dir,0)
}

我是在win10 环境中试验。成功

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

您可能感兴趣的文章:
  • golang逐行读取文件的操作
  • golang解析yaml文件操作
  • Golang 文件操作:删除指定的文件方式
  • Golang 编译成DLL文件的操作
  • golang如何操作csv文件详解
  • Golang文件读写操作详情

Java 获取目录下的所有文件

Java 获取目录下的所有文件

//获取目录下的所有文件
	private List<File> getFiles(String dir,FilenameFilter filenameFilter){
		List<File> result = new LinkedList<File>();
		File path = new File(dir);
		File[] files = path.listFiles(filenameFilter);
		for(File file : files) {
		    if(file.isDirectory()) {
		    	List<File> fileList = getFiles(file.getAbsolutePath(),filenameFilter);
		    	if(CollectionUtils.isNotEmpty(fileList)){
		    		result.addAll(fileList);
		    	}
		    }
		    if(file.isFile()){
		    	result.add(file);
		    }
		}
		return result;
	}

 

Java 获取目录以及子目录下的 sql 文件

Java 获取目录以及子目录下的 sql 文件

问题:得到指定目录以及子目录下指定后缀名的文件,这里是得到 sql 文件

项目文件结构是这样式的

比如我传参 F:/sql  需要得到所有文件夹中的 sql 文件。

解决方案:

用到了 FilenameFilter  以及 递归。

 

首先我们实现 FilenameFiltre 接口,重写 accept 方法

import java.io.File;
import java.io.FilenameFilter;

public class SqlFileFilter implements FilenameFilter {

    @Override
    public boolean accept(File dir, String name) {

        if (dir.isDirectory())
            return true;
        if (name.toLowerCase().endsWith(".sql"))
            return true;
        else
            return false;

    
    }

}

再者,我们写一个通用的递归调用方法

public static List<File> listFile(File dir, FilenameFilter ff,
            boolean recursive) {
        List<File> list = new ArrayList<File>();
        File[] files = dir.listFiles(ff);
        if (files != null && files.length > 0) {
            for (File f : files) {
                // 如果是文件,添加文件到list中
                if (f.isFile()) {
                    list.add(f);
                }
                // 获取子目录中的文件,添加子目录中的经过过滤的所有文件添加到list
                else if (recursive) {
                    list.addAll(listFile(f, ff, true));
                }
            }
        }
        return list;
    }

 

其中第三个参数表示是否递归。

 

测试:

public static void main(String[] args) {

        File file = new File("F:/javaresource/checktools/sql/");

        List<File> files = listFile(file, new SqlFileFilter(), true);

        for (File s : files) {
            System.out.println(s);
        }
    }

结果:

 

关于php获取目录下的文件 文件名php获取目录下的文件 文件名和文件名的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于33.1 File 获取目录下的所有文件及子目录、Golang获取目录下的文件及目录信息操作、Java 获取目录下的所有文件、Java 获取目录以及子目录下的 sql 文件等相关内容,可以在本站寻找。

本文标签: