1. 易语言如何查看FTP里某个文件是否存在
首先是连接FTP服务器,然后下载整个文件名称 如果下载成功等于真,下载失败等于假
是这样写的
连接FTP服务器(“IP地址”,“账号”,“密码”,21,)
如果 (FTP文件下载 (“/1/” + 编辑框1.内容 + “.txt”, 编辑框1.内容 + “.txt”, ) = 真)
等于真的代码~
等于假的代码~
来个截图吧~
2. 请问一下,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();
}
}
}
}
3. 怎么判断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;}}
4. VBNET从FTP下载文件,需要先判断文件是否存在吗
需要。
在实际使用FTP文件服务器的过程中,经常需要远程下载解析文件。为提高效率,需要判断文件存在与否,有选择的进行解析。
FTP协议是一个用于在计算机网络上客户端和服务器之间进行文件传输的应用层协议,包括FTP服务器和FTP客户端两个组成部分。FTP能操作任何类型的文件而不需要进一步处理,但有着极高的延时,从开始请求到第一次接收需求数据之间的时间较长,并不时地执行一些冗长的登录进程。
5. 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来看是否发生了错误,而无法确定具体错误种类。
6. AIX shell 如何判断FTP上某路径 文件是否存在
#!/bin/bash
ftp-v-n<FTP_IP><<EOF
user<username><password>
bi
ls<REMOTE_DIR>/a.file<LOCAL_DIR>/list
prompt
ls
bye
EOF
result=`grep<LOCAL_DIR>/list`
if["$result"='']
then
echo"FILENOTFOUND"
else
echo"FILEEXISTED"
fi
rm-rf<LOCAL_DIR>/list
思路就是通过FTP将ls的结果保存到本地,本地通过grep判断是否有列出特定文件。
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. 如何判断ftp上是否存在某一文件或文件夹
Shell 判断FTP上某个路径、文件是否存在:
#bin/bash
#进入该目录,把文件down在这里
cd /opt/
#某个路径的某个文件变量定义
f1=/file1/file2/filename;
ftp -i -v -n 192.x.x.x <<ok
use ftpuser ftppasswd
binary
get ${f1}
bye
ok
if [ -f /opt/filename ] ;then
echo "the ftp filename exist.";
fi
exit 0
#首先要知道ftp上的路径和文件的名字,如果不知道的话,用通配符也可以,但是路径得知道,总不能全部下载下来吧。。。还有,ftp能登录、用户名、密码应该不会有问题吧,就没判断了。
9. ftp登录服务器后如何判断服务器上是存在某一个文件
procere TForm1.Button3Click(Sender: TObject);
var
List : TStringList;
filename : String;
begin
filename:='123.txt';
IdFTP1.List(List,true);
if List.IndexOf(filename)>0 then
showmessage('ssssssssssss');
end;