Java遍歷D盤所有.jpg .png文件路徑file,listFiles,數(shù)據(jù)庫(kù),jdbc,遞歸【詩(shī)書畫唱】

遍歷D盤下根目錄下所有的文件名稱

package createFile;
import java.io.File;
public class bianLiAll {
public static void main(String[] args) throws Exception{
File f=new File("D:/集成開(kāi)發(fā)工具");
// 或?qū)懗蒄ile f=new File("D:/集成開(kāi)發(fā)工具");
//用listFiles獲取這個(gè)位置下的所有的文件:
File[] fShuZu=f.listFiles();
//遍歷獲取的所有的文件
for(File i:fShuZu){
// getAbsolutePath:得到絕對(duì)路徑
System.out.println(i.getAbsolutePath());
}
}
}


遍歷D盤下自己選的根目錄下所有的.jpg .png結(jié)尾的圖片文件

package createFile;
import java.io.File;
public class listFiles {
public static void main(String[] args) throws Exception{
File f=new File("D:/集成開(kāi)發(fā)工具");
// 或?qū)懗蒄ile f=new File("D:/集成開(kāi)發(fā)工具");
File[] fShuZu=f.listFiles();
//用listFiles儲(chǔ)存所有的文件
for(File i:fShuZu){
//用if判斷得到文件的類型是不是文件
if(i.getName().lastIndexOf(".")!=-1){
//含“.”,得到的就是文件
//如果是文件就用substring截取文件的后綴名
String name=i.getName();//用getName()得到文件的名稱
// 下面的一句代碼的意思:得到“.”后的所有內(nèi)容:
String neiRong=name.substring(name.lastIndexOf("."));
if(neiRong.equals(".jpg")||neiRong.equals(".png")){
System.out.println(i.getAbsolutePath());
}
}
}
}
}


遍歷D盤下所有的文件名稱

package createFile;
import java.io.*;
public class getAll {
public static void main(String[] args) throws Exception{
?bianliFangFa("D://");
?
// 或 File f=new File("D://");
//
// String lujin=f.getAbsolutePath();
// bianli(lujin);
// System.out.println(lujin);//打印的內(nèi)容為“D:\”
}
public static void bianliFangFa(String chuanLuJing){
File f=new File(chuanLuJing);
if(f.exists()&&f.isDirectory()){
File[] fShuZu=f.listFiles();
for(File i:fShuZu){
if(i.isHidden()){
continue;
}
if(i.isDirectory()&&i.exists()){
bianliFangFa(i.getAbsolutePath());
}
System.out.println(i.getAbsolutePath());
}
}
}
}


遍歷D盤下所有的.jpg?.png?.gif結(jié)尾的圖片文件


package createFile;
import java.io.*;
public class getOne {
public static void main(String[] args) throws Exception{
?bianli("D://");
?
}
// chuanLuJing:傳路徑
public static void bianli(String chuanLuJing){
File f=new File(chuanLuJing);
if(f.exists()&&f.isDirectory()){
File[] fShuZu=f.listFiles();
for(File i:fShuZu){
if(i.isHidden()){
continue;
}
if(i.isDirectory()&&i.exists()){
bianli(i.getAbsolutePath());
}
if(i.getName().lastIndexOf(".")!=-1){
// lastIndexOf是從字符串末尾開(kāi)始檢索,檢索到子字符,
// 則返回子字符在字符串中的位置,
// (位置從前向后數(shù),最小位為0,
// 也就是從第0位開(kāi)始算起)未檢測(cè)到則返回-1
// lastIndexOf("XXX")!=-1表示檢測(cè)到字符串"XXX"
// 該方法將從尾到頭地檢索字符串,看它是否含有子串。
// 開(kāi)始檢索的位置在字符串的末尾。如果找到一個(gè)searchvalue(要找的值),
// 則返回searchvalue(要找的值)的最后一次出現(xiàn)的位置。
// 字符串中的字符位置是從0開(kāi)始的。
String houZhuiNeiRong=i.getName().
substring(i.getName().lastIndexOf("."));
if(houZhuiNeiRong.equals(".jpg")||houZhuiNeiRong.equals(".png")){
System.out.println(i.getAbsolutePath());
}
}
}
}
}}


建立數(shù)據(jù)庫(kù)表”file”,包含”file_id”,”file_name”列,遍歷D盤下所有的文件,將文件名稱保存到數(shù)據(jù)庫(kù)中

create table files(
file_id int primary key identity(1,1),
file_name nvarchar(2000),
--nvarchar(XXX)中的XXX的數(shù)值這里要大,不然會(huì)報(bào)錯(cuò)
)
select* from files
drop table files


package createFile;
import java.io.*;
import java.sql.Connection;
public class jdbcFlie {
public static Connection con=DBUtilsPreparedStatement.getCon();
public static void main(String[] args) throws Exception{
?bianliFangFa("D://");
?
?
}
public static void bianliFangFa(String chuanLuJing){
File f=new File(chuanLuJing);
if(f.exists()&&f.isDirectory()){
File[] fShuZu=f.listFiles();
for(File i:fShuZu){
if(i.isHidden()){
continue;
}
if(i.isDirectory()&&i.exists()){
bianliFangFa(i.getAbsolutePath());
// 或?qū)懗?bianliFangFa(i.getAbsolutePath().toString());
}?
String sql="insert into files values(?)";
DBUtilsPreparedStatement.
ZSG(sql,con,i.getAbsoluteFile().toString());
System.out.println("數(shù)據(jù)添加到數(shù)據(jù)庫(kù)成功");
}
}
?
}
}


