當前位置:首頁 » 文件管理 » java怎麼建文件夾

java怎麼建文件夾

發布時間: 2022-12-06 20:17:34

『壹』 java 實現ftp上傳如何創建文件夾

這個功能我也剛寫完,不過我也是得益於同行,現在我也把自己的分享給大家,希望能對大家有所幫助,因為自己的項目不涉及到創建文件夾,也僅作分享,不喜勿噴謝謝!

interface:
packagecom.sunline.bank.ftputil;

importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importorg.apache.commons.net.ftp.FTPClient;

publicinterfaceIFtpUtils{
/**
*ftp登錄
*@paramhostname主機名
*@paramport埠號
*@paramusername用戶名
*@parampassword密碼
*@return
*/
publicFTPClientloginFtp(Stringhostname,Integerport,Stringusername,Stringpassword);
/**
*上穿文件
*@paramhostname主機名
*@paramport埠號
*@paramusername用戶名
*@parampassword密碼
*@paramfpathftp路徑
*@paramlocalpath本地路徑
*@paramfileName文件名
*@return
*/
(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName);
/**
*批量下載文件
*@paramhostname
*@paramport
*@paramusername
*@parampassword
*@paramfpath
*@paramlocalpath
*@paramfileName源文件名
*@paramfilenames需要修改成的文件名
*@return
*/
publicbooleandownloadFileList(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName,Stringfilenames);
/**
*修改文件名
*@paramlocalpath
*@paramfileName源文件名
*@paramfilenames需要修改的文件名
*/
(Stringlocalpath,StringfileName,Stringfilenames);
/**
*關閉流連接、ftp連接
*@paramftpClient
*@parambufferRead
*@parambuffer
*/
publicvoidcloseFtpConnection(FTPClientftpClient,,BufferedInputStreambuffer);
}

impl:
packagecom.sunline.bank.ftputil;

importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.IOException;
importorg.apache.commons.net.ftp.FTPClient;
importorg.apache.commons.net.ftp.FTPFile;
importorg.apache.commons.net.ftp.FTPReply;
importcommon.Logger;

{
privatestaticLoggerlog=Logger.getLogger(FtpUtilsImpl.class);
FTPClientftpClient=null;
Integerreply=null;

@Override
publicFTPClientloginFtp(Stringhostname,Integerport,Stringusername,Stringpassword){
ftpClient=newFTPClient();
try{
ftpClient.connect(hostname,port);
ftpClient.login(username,password);
ftpClient.setControlEncoding("utf-8");
reply=ftpClient.getReplyCode();
ftpClient.setDataTimeout(60000);
ftpClient.setConnectTimeout(60000);
//設置文件類型為二進制(避免解壓縮文件失敗)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
//開通數據埠傳輸數據,避免阻塞
ftpClient.enterLocalActiveMode();
if(!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())){
log.error("連接FTP失敗,用戶名或密碼錯誤");
}else{
log.info("FTP連接成功");
}
}catch(Exceptione){
if(!FTPReply.isPositiveCompletion(reply)){
try{
ftpClient.disconnect();
}catch(IOExceptione1){
log.error("登錄FTP失敗,請檢查FTP相關配置信息是否正確",e1);
}
}
}
returnftpClient;
}

@Override
@SuppressWarnings("resource")
(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName){
booleanflag=false;
ftpClient=loginFtp(hostname,port,username,password);
BufferedInputStreambuffer=null;
try{
buffer=newBufferedInputStream(newFileInputStream(localpath+fileName));
ftpClient.changeWorkingDirectory(fpath);
fileName=newString(fileName.getBytes("utf-8"),ftpClient.DEFAULT_CONTROL_ENCODING);
if(!ftpClient.storeFile(fileName,buffer)){
log.error("上傳失敗");
returnflag;
}
buffer.close();
ftpClient.logout();
flag=true;
returnflag;
}catch(Exceptione){
e.printStackTrace();
}finally{
closeFtpConnection(ftpClient,null,buffer);
log.info("文件上傳成功");
}
returnfalse;
}

@Override
publicbooleandownloadFileList(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName,Stringfilenames){
ftpClient=loginFtp(hostname,port,username,password);
booleanflag=false;
=null;
if(fpath.startsWith("/")&&fpath.endsWith("/")){
try{
//切換到當前目錄
this.ftpClient.changeWorkingDirectory(fpath);
this.ftpClient.enterLocalActiveMode();
FTPFile[]ftpFiles=this.ftpClient.listFiles();
for(FTPFilefiles:ftpFiles){
if(files.isFile()){
System.out.println("=================="+files.getName());
FilelocalFile=newFile(localpath+"/"+files.getName());
bufferRead=newBufferedOutputStream(newFileOutputStream(localFile));
ftpClient.retrieveFile(files.getName(),bufferRead);
bufferRead.flush();
}
}
ftpClient.logout();
flag=true;

}catch(IOExceptione){
e.printStackTrace();
}finally{
closeFtpConnection(ftpClient,bufferRead,null);
log.info("文件下載成功");
}
}
modifiedLocalFileName(localpath,fileName,filenames);
returnflag;
}

@Override
(Stringlocalpath,StringfileName,Stringfilenames){
Filefile=newFile(localpath);
File[]fileList=file.listFiles();
if(file.exists()){
if(null==fileList||fileList.length==0){
log.error("文件夾是空的");
}else{
for(Filedata:fileList){
Stringorprefix=data.getName().substring(0,data.getName().lastIndexOf("."));
Stringprefix=fileName.substring(0,fileName.lastIndexOf("."));
System.out.println("index==="+orprefix+"prefix==="+prefix);
if(orprefix.contains(prefix)){
booleanf=data.renameTo(newFile(localpath+"/"+filenames));
System.out.println("f============="+f);
}else{
log.error("需要重命名的文件不存在,請檢查。。。");
}
}
}
}
}


@Override
publicvoidcloseFtpConnection(FTPClientftpClient,,BufferedInputStreambuffer){
if(ftpClient.isConnected()){
try{
ftpClient.disconnect();
}catch(IOExceptione){
e.printStackTrace();
}
}
if(null!=bufferRead){
try{
bufferRead.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
if(null!=buffer){
try{
buffer.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}


publicstaticvoidmain(String[]args)throwsIOException{
Stringhostname="xx.xxx.x.xxx";
Integerport=21;
Stringusername="edwftp";
Stringpassword="edwftp";
Stringfpath="/etl/etldata/back/";
StringlocalPath="C:/Users/Administrator/Desktop/ftp下載/";
StringfileName="test.txt";
Stringfilenames="ok.txt";
FtpUtilsImplftp=newFtpUtilsImpl();
/*ftp.modifiedLocalFileName(localPath,fileName,filenames);*/
ftp.downloadFileList(hostname,port,username,password,fpath,localPath,fileName,filenames);
/*ftp.uploadLocalFilesToFtp(hostname,port,username,password,fpath,localPath,fileName);*/
/*ftp.modifiedLocalFileName(localPath);*/
}
}

『貳』 Java如何創建文件夾

Java創建文件夾的方法
/** * 用於創建文件夾的方法 * @param mkdirName */ public void mkdir(String mkdirName) { try { File dirFile = new File(mkdirName); boolean bFile = dirFile.exists(); if( bFile == true ) { System.out.println("The folder exists."); } else { System.out.println("The folder do not exist,now trying to create a one..."); bFile = dirFile.mkdir(); if( bFile == true ) { System.out.println("Create successfully!"); System.out.println("創建文件夾"); } else { System.out.println("Disable to make the folder,please check the disk is full or not."); System.out.println(" 文件夾創建失敗,清確認磁碟沒有防寫並且空件足夠"); System.exit(1); } } } catch(Exception err) { System.err.println("ELS - Chart : 文件夾創建發生異常"); err.printStackTrace(); } } }責任編輯:小草

『叄』 Java如何創建文件夾

file類裡面有兩個方法可以實現:
一個是mkdir():創建此抽象路徑名指定的目錄。
另外一個是mkdirs():創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。
比如你想在a文件夾創建一個b文件夾,並在b文件夾下創建c和d文件夾,可以用下面的代碼實現:
importjava.io.file;
publicclasstest{
publicstaticvoidmain(stringargs[]){
filefile=newfile("d:\\a\\b\\c");
file.mkdirs();
file=newfile("d:\\a\\b\\d");
file.mkdir();
}
}
希望對你有幫助。。。。仍有問題可以hi我。。。

『肆』 Java中如何進行文件(及文件夾)的新建,移動,刪除等給出代碼

File
F=new
File(路徑);/通過將給定路徑名字元串轉換為抽象路徑名來創建一個新
File
實例。
F.delete();//刪除此抽象路徑名表示的文件或目錄。
文件的移動的話,得通過輸入輸出流
FileInputStream
FI=new
FileInputStream(F);
FileOutputStream
FO=new
FileOutputStream(F);
wile(FI.read()!=EOF)
{
FO.write();
}

『伍』 如何用java創建文件和文件夾

public static void main(String[] args) {
//建立一個文件夾
File file=new File("E:\\workspace");
if(!file.exists()){//如果不存在該文件夾
file.mkdir();//新建

『陸』 文件和文件夾的建立 JAVA

第一個問題:
File file =new File(String pathname);只是在內存中創建了一個File實例。pathname可以是路徑也可以是文件。然後調用file.createNewFile();才會創建文件。所以不是樓主是所說的ile has never been read。
而執行PrintWriter out = new PrintWriter(file);後發現創建了文件,這是由於PrintWriter構造方法執行機制所決定的,如果文件為空,則會自動掉用file的createNewFile()方法創建一個文件(詳見api PrintWriter)。所以樓主又看到了所創建的文件。異常用try catch捕獲FileNotFoundException。
第二個問題:創建多級目錄要用file.mkdirs();你那個只能創建一級目錄。

我寫個例子 經過檢驗的 你參考一下 多級目錄的文件創建:
import java.io.*;
public class FileTest{
public File fileCreate(String fileFoder, String fileName){
File foder = new File(fileFoder);
File file = new File(fileFoder+fileName);
//如果文件夾不存在,則創建文件夾
if(foder.exists()==false){
foder.mkdirs();//多級目錄
//foder.mkdir();//只創建一級目錄
}

//如果文件不存在,則創建文件
if(file.exists()==false){
try{
file.createNewFile();
}catch(IOException e){
e.printStackTrace();
}
}
return file;
}
public static void main(String [] args){
FileTest fileTest= new FileTest();
String fileFoder="D://test1//test2";
String fileName="//test_io.txt";

File file= fileTest.fileCreate(fileFoder,fileName);
System.out.println(file.getPath());
}
}

至於文件讀寫的內容很多 給你個參考的鏈接
http://www.jb51.net/article/16396.htm

『柒』 如何用JAVA代碼創建一個文件夾

File類裡面有兩個方法可以實現:x0dx0a一個是mkdir():創建此抽象路徑名指定的目錄。x0dx0a另外一個是mkdirs(): 創建此抽象路徑名指定的目錄,包括所有必需但不存在的父目錄。x0dx0ax0dx0a比如你想在A文件夾創建一個B文件夾,並在B文件夾下創建c和D文件夾,可以用下面的代碼實現:x0dx0ax0dx0aimport java.io.File;x0dx0ax0dx0apublic class Test {x0dx0a public static void main(String args[]) {x0dx0a File file = new File("D:\\A\\B\\C");x0dx0a file.mkdirs();x0dx0a x0dx0a file = new File("D:\\A\\B\\D");x0dx0a file.mkdir();x0dx0a }x0dx0a}

『捌』 如何用java在指定目錄下創建一個文件夾

具體的創建方法參照下面的實例:

public class FileTest {


publicstaticvoidmain(String[]args){
//根據系統的實際情況選擇目錄分隔符(windows下是,linux下是/)
Stringseparator=File.separator;
Stringdirectory="myDir1"+separator+"myDir2";
//以下這句的效果等同於上面兩句,windows下正斜杠/和反斜杠都是可以的
//linux下只認正斜杠,為了保證跨平台性,不建議使用反斜杠(在java程序中是轉義字元,用來表示反斜杠)
//Stringdirectory="myDir1/myDir2";
StringfileName="myFile.txt";
//在內存中創建一個文件對象,注意:此時還沒有在硬碟對應目錄下創建實實在在的文件
Filef=newFile(directory,fileName);
if(f.exists()){
//文件已經存在,輸出文件的相關信息
System.out.println(f.getAbsolutePath());
System.out.println(f.getName());
System.out.println(f.length());
}else{
//先創建文件所在的目錄
f.getParentFile().mkdirs();
try{
//創建新文件
f.createNewFile();
}catch(IOExceptione){
System.out.println("創建新文件時出現了錯誤。。。");
e.printStackTrace();
}
}

}

}
熱點內容
光遇蘋果如何下載安卓服 發布:2024-04-20 13:40:03 瀏覽:460
半歲學編程 發布:2024-04-20 13:17:53 瀏覽:217
linux按鍵 發布:2024-04-20 13:17:52 瀏覽:832
最頂配的伺服器能容納多少ip 發布:2024-04-20 13:17:44 瀏覽:514
貸款車解壓需要什麼 發布:2024-04-20 13:14:52 瀏覽:72
安卓手機電腦怎麼切換 發布:2024-04-20 13:13:25 瀏覽:893
android交叉編譯環境 發布:2024-04-20 13:00:10 瀏覽:184
伺服器怎麼搭建中間層 發布:2024-04-20 12:40:02 瀏覽:98
如何獲取網路的賬號和密碼 發布:2024-04-20 12:34:06 瀏覽:921
安卓現在哪個品牌用得最久 發布:2024-04-20 12:00:50 瀏覽:278