「java获取指定批量文件」java获取指定批量文件的方法
本篇文章给大家谈谈java获取指定批量文件,以及java获取指定批量文件的方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、Java如何获取指定文件夹内的全部文件名称,并将文件名称输出到一字符数组内
- 2、java中如何实现文件的批量读取与写入
- 3、java 怎么获取指定路径下的文件
- 4、关于java批量读取文件,创建文件的问题。
- 5、java如何通过文件路径读取该路径下的所有文件并将其放入list中
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获取指定批量文件的方法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-26,除非注明,否则均为
原创文章,转载请注明出处。