判斷ftp文件是否存在
ftpClient.makeDirectory(目錄地址); 返回結果true或false
返回true證明創建成功,即在執行創建命令前ftp上不存在此目錄
返回false證明創建失敗,即ftp上已存在此目錄
2. VBNET從FTP下載文件,需要先判斷文件是否存在嗎
需要。
在實際使用FTP文件伺服器的過程中,經常需要遠程下載解析文件。為提高效率,需要判斷文件存在與否,有選擇的進行解析。
FTP協議是一個用於在計算機網路上客戶端和伺服器之間進行文件傳輸的應用層協議,包括FTP伺服器和FTP客戶端兩個組成部分。FTP能操作任何類型的文件而不需要進一步處理,但有著極高的延時,從開始請求到第一次接收需求數據之間的時間較長,並不時地執行一些冗長的登錄進程。
3. shell中ftp中如何判斷文件是否存在,或者目錄是否存在
-e filename 如果 filename存在,則為真 [ -e /var/log/syslog ]
-d filename 如果 filename為目錄,則為真 [ -d /tmp/mydir ]
-f filename 如果 filename為常規文件,則為真 [ -f /usr/bin/grep ]
4. C#通過ftp判斷伺服器上指定目錄下面的文件夾是否存在,不存在就在改目錄下新建一個
一、登陸伺服器後台查看,用cuteftp等軟體可以看到,瀏覽器在伺服器提供商登錄也行。
二、直接輸入連接,打開test文件夾里的任意腳本之類的東西,只要不顯示not found 就證明有存在。前提是你知道一般情況下測試模式會在該文件夾里創建什麼文件以及文件名和後綴。
5. 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);
}
}
}
6. 怎麼判斷FTP文件是否存在
//////1.從ftp伺服器的指定目錄下獲得文件列表//////ftp伺服器IP(DNS)地址///對ftp伺服器上的目錄或文檔的操作方式///publicstaticvoidGetFileList(stringpath,stringWRMethods){string[]downloadFiles;WebResponseresponse=null;StreamReaderreader=null;StringBuilderresult=newStringBuilder();try{//連接ftp伺服器ConnectFtpServer(path);//設定要傳送到ftp伺服器的命令reqFTP.Method=WRMethods;//傳回ftp伺服器回應response=reqFTP.GetResponse();reader=newStreamReader(response.GetResponseStream(),Encoding.Default);stringline=reader.ReadLine();while(line!=null){if(line.Substring(line.LastIndexOf('.')+1,3)=="xml"){result.Append(line);result.Append("\n");}line=reader.ReadLine();}if(string.IsNullOrEmpty(result.ToString())==true||result.ToString().Length0){DownLoad(localFolder,downloadFiles);}reader.Close();response.Close();_job_Message+="本次讀取到的文件列表為:"+result;///刪除FTP上的文件DeleteFileName(localFolder,downloadFiles);}}catch(Exceptionex){_job_Err_Message+="3.從FTP遠端主機的根目錄下獲得文件列表時發生的錯誤訊息:"+ex.Message.ToString()+"";downloadFiles=null;}}
7. C# 判斷ftp上目錄是否存在
FtpWebRequest
frequest
=
FtpWebRequest.Create("
ftp://guoming.daya.com:1212/test")
as
FtpWebRequest;
frequest.Credentials
=
new
NetworkCredential("用戶名",
"密碼");
frequest.Method
=
WebRequestMethods.Ftp.ListDirectory;
try
{
FtpWebResponse
response
=
frequest.GetResponse()
as
FtpWebResponse;
}
catch
{
Console.WriteLine("目錄不存在");
}
答案補充
重復以上操作就可以了啊
FtpWebRequest
frequest
=
FtpWebRequest.Create("ftp://guoming.daya.com:1212/test/test")
as
FtpWebRequest;
frequest.Credentials
=
new
NetworkCredential("用戶名",
"密碼");
frequest.Method
=
WebRequestMethods.Ftp.MakeDirectory;
try
{
FtpWebResponse
response
=
frequest.GetResponse()
as
FtpWebResponse;
}
catch
{
}
答案補充
FtpWebRequest
frequest
=
FtpWebRequest.Create("ftp://guoming.daya.com:1212/test/test/test")
as
FtpWebRequest;
frequest.Credentials
=
new
NetworkCredential("用戶名",
"密碼");
frequest.Method
=
WebRequestMethods.Ftp.MakeDirectory;
try
{
FtpWebResponse
response
=
frequest.GetResponse()
as
FtpWebResponse;
}
catch
{
}
答案補充
暫時沒有好的解決方法。
8. C#如何判斷FTP伺服器上的文件夾是否存在
引入IO命名空間Directory類就是用來操作文件夾的Directory.Exists(string path); 該方法用於檢查指定的文件夾在磁碟上是否存在,存在返回true,否則false
9. JAVA當中如何在FTP上查找文件或目錄是否存在
我覺得用file的exists就可以
File f=new File("file url");
if(f.exists()){
System.out.println("exists");
}
else{
System.out.println("not exist");
}
10. Shell 判斷FTP上某個路徑、文件是否存在
如果FTP上的文件很大,獲取文件會很費時。應該可以不用獲取直接判斷的,下面供借鑒:
#!/bin/bash
server=127.0.0.1#改為你自己的FTP伺服器IP
user=root#修改為你自己的FTP登錄用戶名
password=root#修改為你自己的FTP用戶密碼
errlog=./err.log#用於記錄FTP錯誤
ftpCheckFile()
{
ftp-n-i$server<<EOF
USER$user
PASS$password
ls$1
bye
EOF
}
rm-f$errlog
ftpCheckFile$1>/dev/null2>$errlog
bytes=`wc-c$errlog|awk'{print$1}'`
if[$bytes-eq0];then
echo"$1-Exist!"
else
echo"$1-Notexist!"
fi
用的時候在腳本名後跟一個參數,就是你要判斷的文件名或路徑名。
思路:如果文件或路徑不存在,FTP中的ls命令會執行錯誤,從而在錯誤日誌err.log中有記錄。
通過解析該錯誤日誌的內容,可以得知文件或目錄是否存在。
我這里暫時沒有環境試驗,所以沒法得知錯誤日誌的格式,只能暫且通過判斷日誌位元組大小是否為0來看是否發生了錯誤,而無法確定具體錯誤種類。