javaftp目錄是否存在
① java的ftp上傳和下載怎麼判斷文件夾是否存在,不存在就創建...
if(!file.exist)
{
file.mdr();
}
② java 如何判斷ftp文件存不存在
是可以這樣判斷
但是 你要注意的是 你的程序有可能和FTP不再同一台伺服器上
所以 你要多做一些工作 你先要根據獲取FTP的IP
根據這個IP的FTP目錄 在進行判斷
③ 你好: 我也在做這個E語言,我們的伺服器是linux的,用Java去查找FTP上的指定E文件是否存在,可是取過來的
我的情況是把文件上傳到ftp伺服器時,發現ftp伺服器文件名稱亂碼,所以我就對文件名編碼,
當然你可以根據自己的情況寫轉換方法:
boolean b = ftpClient.storeFile(GBKToiso8859(filename), input);
/**
* 轉碼[GBK -> iso-8859-1] 不同的平台需要不同的轉碼
*
* @param obj
* @return
*/
private String GBKToiso8859(Object obj) {
try {
if (obj == null)
return "";
else
return new String(obj.toString().getBytes("GBK"), "iso-8859-1");
} catch (Exception e) {
return "";
}
}
④ java 怎麼查看ftp目錄是否存在
ftpClient.makeDirectory(目錄地址); 返回結果true或false
返回true證明創建成功,即在執行創建命令前ftp上不存在此目錄
返回false證明創建失敗,即ftp上已存在此目錄
⑤ JAVA當中如何在FTP上查找文件或目錄是否存在
我覺得用file的exists就可以
File f=new File("file url");
if(f.exists()){
System.out.println("exists");
}
else{
System.out.println("not exist");
}
⑥ java 在ftp上的所有文件查詢文件是否存在
packagetest;
importjava.io.DataInputStream;
importsun.net.ftp.FtpClient;
publicclassFtpDown1{
publicstaticvoidmain(Stringargs[])throwsException{
Stringhost="ip地址";
Stringpath="";
Stringusername="用戶名";
Stringpassword="密碼";
FtpClientclient=newFtpClient(host);
client.login(username,password);
client.binary();
client.cd("/目錄名稱");//如果是根目錄下直接寫個/就行了,或者不寫
DataInputStreamdis=newDataInputStream(client.nameList("test_*.xml"));
intreadCount;
Strings="";
while((s=dis.readLine())!=null){
//在此處判斷是否存在對應的文件
System.out.println("Getting:"+s);
}
}
}
⑦ 請問一下,java中有沒直接判斷ftp上文件夾下是否存在某文件的方法通過遍歷文件夾的方式判斷太耗內存了
第一個種方法 :
org.apache.commons.net.ftp.* 看這個目錄下是否有你要的方法
第二種方法:
package com.soft4j.log4j;
import java.io.IOException;
import sun.net.ftp.FtpClient;
public class FtpTest
{
static String middle_ftpServer = "10.103.2.250";
static String middle_user = "ora9iftp";
static String middle_password = "ftp";
static String middle_dir = "/image/NWKPHOTO/Middle/2009/3";
public static void main(String[] args)
{
FtpClient ftpClient = new FtpClient();
try
{
ftpClient.openServer(middle_ftpServer);
ftpClient.login(middle_user, middle_password);
FtpTest ft = new FtpTest();
ft.isDirExist(ftpClient, middle_dir);
} catch (IOException e)
{
e.printStackTrace();
}
}
/** 判斷Ftp目錄是否存在,如果不存在則創建目錄 */
public void isDirExist(FtpClient ftpClient, String dir)
{
try
{
ftpClient.cd(dir); //想不到什麼好辦法來判斷目錄是否存在,只能用異常了(比較笨).請知道的告訴我一聲`
} catch (IOException e1)
{
ftpClient.sendServer("MKD " + dir + "\r\n");
try
{
ftpClient.readServerResponse();
} catch (IOException e)
{
e.printStackTrace();
}
}
}
}
⑧ 如何java判斷ftp伺服器上路徑是否存在
要注意的是程序有可能和FTP不再同一台伺服器上,所以要多做一些工作,先要根據獲取FTP的IP,根據這個IP的FTP目錄在進行判斷
代碼如下
=======介面部分===============
IMPORT JAVA.RMI.REMOTE;
IMPORT JAVA.RMI.REMOTEEXCEPTION;
PUBLIC INTERFACE IDOREMOTE EXTENDS REMOTE {
PUBLIC INT GETSERVERTIME() THROWS REMOTEEXCEPTION;
}
=======介面實現===============
PUBLIC CLASS DOREMOTEIMPL EXTENDS UNICASTREMOTEOBJECT IMPLEMENTS IDOREMOTE {
/**
* @THROWS REMOTEEXCEPTION
*/
PROTECTED DOREMOTEIMPL() THROWS REMOTEEXCEPTION {
SUPER();
}
PRIVATE STATIC FINAL LONG SERIALVERSIONUID = -8158779541912069375L;
/**
* @SEE CN.SHIY.TEST.REMOTESERVER.IDOREMOTE#GETSERVERTIME()
*/
PUBLIC INT GETSERVERTIME() THROWS REMOTEEXCEPTION {
RETURN INTEGER.PARSEINT(NEW SIMPLEDATEFORMAT("YYYYMMDD").FORMAT(NEW DATE()));
// RETURN NEW DATE();
}
========SERVER端綁定===============
PUBLIC STATIC VOID MAIN(STRING[] ARGS) {
TRY {
LOCATEREGISTRY.CREATEREGISTRY(8808);
DOREMOTEIMPL SERVER = NEW DOREMOTEIMPL();
NAMING.REBIND("//LOCALHOST:8808/DATE-SERVER", SERVER);
} CATCH (JAVA.NET.MALFORMEDURLEXCEPTION ME) {
SYSTEM.OUT.PRINTLN("MALFORMED URL: " + ME.TOSTRING());
} CATCH (REMOTEEXCEPTION RE) {
SYSTEM.OUT.PRINTLN("REMOTE EXCEPTION: " + RE.TOSTRING());
}
}
===========客戶端的調用方式============
STRING URL = "//LOCALHOST:8808/DATE-SERVER";
IDOREMOTE RMIOBJECT = (IDOREMOTE) NAMING.LOOKUP(URL);
SYSTEM.OUT.PRINTLN(" SERVER DATE: " + RMIOBJECT.GETSERVERTIME());