「java获取指定批量文件」java获取指定批量文件的方法

博主:adminadmin 2022-11-26 20:32:09 55

本篇文章给大家谈谈java获取指定批量文件,以及java获取指定批量文件的方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java如何获取指定文件夹内的全部文件名称,并将文件名称输出到一字符数组内

import java.io.File;

import java.io.FilenameFilter;

public class Test {

    public static void main(String[] args) {

        //C:盘下的所有文件,包括文件夹

        String[] filenames = new File("C:/").list();

        //C:盘下后缀名为txt的文件

        String[] filenames2 = new File("C:/").list(new FilenameFilter() {

            public boolean accept(File dir, String name) {

                return name.endsWith(".txt");

            }

        });

        //C:盘下所有目录

        String[] filenames3 = new File("C:/").list(new FilenameFilter() {

            public boolean accept(File dir, String name) {

                return new File(dir, name).isDirectory();

            }

        });

    }

}

java中如何实现文件的批量读取与写入

你可以将所有图片的名字放在一个数组中,然后循环该数组,在循环中调用转换图片的方法:

String[] names={"1.jpg","2.jpg","3.jpg"};

for(String name:names)handle(name);

假如说你的文件名的命名有一定的规律,就像上面的数组一样,就可以直接循环,然后在循环体中自己生成文件名:

for(int i=1;i=40;i++){

    name=i+".jpg";

    handle(name);    

}

java 怎么获取指定路径下的文件

//根据你的要求修改了一下代码,现在已经能将某文件夹下的所有指定类型文件复制到

//指定文件夹下了

import java.io.BufferedInputStream;

import java.io.BufferedOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

public class ReadFiles {

public static final String FILTER = "xml";

public static final String SRC_DIR = "E:\\StudyData";// 待扫描的文件夹

public static final String DES_DIR = "E:\\testdata";// 复制后的目标文件夹

public static void main(String[] args) {

long a = System.currentTimeMillis();

scanDir(SRC_DIR, DES_DIR);

System.out.println("共花费时间:"+(System.currentTimeMillis() - a)/1000+"秒");

}

public static void scanDir(String srcPath, String desPath) {

File dir = new File(srcPath);

File[] files = dir.listFiles();

if (files == null)

return;

for (int i = 0; i files.length; i++) {

if (files[i].isDirectory()) {

scanDir(files[i].getAbsolutePath(), desPath);

} else {

String strFileName = files[i].getAbsolutePath().toLowerCase();

copyFile(strFileName, desPath + files[i].getName());

}

}

}

public static void copyFile(String srcName, String destName) {

if (srcName.endsWith(FILTER)) {

System.out.println("正在复制文件 "+srcName+" 至 "+destName);

try {

BufferedInputStream in = new BufferedInputStream(

new FileInputStream(srcName));

BufferedOutputStream out = new BufferedOutputStream(

new FileOutputStream(destName));

int i = 0;

byte[] buffer = new byte[2048];

while ((i = in.read(buffer)) != -1) {

out.write(buffer, 0, i);

}

out.close();

in.close();

} catch (Exception ex) {

ex.printStackTrace();

}

}

}

}

关于java批量读取文件,创建文件的问题。

FileOutputStream fos1=new FileOutputStream("目标目录\\1.txt");

FileOutputStream fos2=new FileOutputStream("目标目录\\2.txt");

FileOutputStream fos3=new FileOutputStream("目标目录\\3.txt");

//不需要去判断 文件是否存在 因为 new FileOutputStream("目标目录\\1.txt");默认是会覆盖源文件的

//如果new FileOutputStream("目标目录\\1.txt",true);则是在文件尾追加

// File file=new File("存放文件的目录");

File file=new File("存放文件的目录");

File[] files=file.listFiles();

for(File f:files){

FileInputStream fis=new FileInputStream(f);

byte[] b=new byte[fis.available()];

fis.read(b);

if(f.getName().charAt(0)=='1'){

fos1.write(b);

}else if(f.getName().charAt(0)=='2'){

fos2.write(b);

}else if(f.getName().charAt(0)=='3'){

fos3.write(b);

}

fis.close();

}

fos1.close();

fos2.close();

fos3.close();

java如何通过文件路径读取该路径下的所有文件并将其放入list中

java中可以通过递归的方式获取指定路径下的所有文件并将其放入List集合中。

假设指定路径为path,目标集合为fileList,遍历指定路径下的所有文件,如果是目录文件则递归调用,如果是普通文件则放入fileList中。

根据这个思路,得到java源代码如下所示:

//方法getFiles根据指定路径获取所有的文件

public void getFiles(String path){

//目标集合fileList

ArrayListFile fileList = new ArrayList();

File file = new File(path);

if(file.isDirectory()){

File []files = file.listFiles();

for(File fileIndex:files){

//如果这个文件是目录,则进行递归搜索

if(fileIndex.isDirectory()){

getFiles(fileIndex.getPath());

}else {

//如果文件是普通文件,则将文件句柄放入集合中

fileList.add(fileIndex);

}

}

}

}

关于java获取指定批量文件和java获取指定批量文件的方法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。