//////获取ftp服务器上指定
文件夹的文件列表(包含
文件大小)//////////////////publicDictionaryGetFTPList(stringServerIP,stringUSERID,stringPassWord,stringpath){Dictionarydic=newDictionary()if(path==null)path=""FtpWebRequestreqFtptry{reqFtp=(FtpWebRequest)FtpWebRequest.Create(newUri("ftp://"+ServerIP+"/"+path))reqFtp.KeepAlive=falsereqFtp.UseBinary=true//指定ftp数据传输类型为二进制reqFtp.Credentials=newNetworkCredential(USERID,PassWord)//设置于ftp通讯的凭据reqFtp.Method=WebRequestMethods.Ftp.ListDirectoryDetails//指定操作方式WebResponseresponse=reqFtp.GetResponse()//获取一个FTP响应StreamReaderreader=newStreamReader(response.GetResponseStream(),Encoding.GetEncoding("GB2312"))//读取响应流stringline=reader.ReadLine()while(line!=null){if(line!="."&&line!=".."){intend=line.LastIndexOf('')intstart=line.IndexOf("")stringfilename=line.Substring(end+1)if(filename.Contains(".")){line=line.Replace(filename,"")dic.Add(filename.Trim(),int.Parse(line.Substring(start).Trim()))}}line=reader.ReadLine()}}catch(Exceptionex){Console.WriteLine(ex.Message)}returndic}文件夹或者某一文件都适用答:向服务器发送一个HEAD请求。服务器的响应中:
Content-Type: text/css //文件类型
Content-Length: 207 //文件大小
若文件类型是写在HTML文档内部,则读取出HTML内部的
<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />
进行处理。
以上仅供你参考。
服务器上是不存在文件
图标的,图标的显示取决于你本地计算机的文件关联情况,要简单的话,你可以准备一些常用文件格式图标(比如rar、zip、doc等等)放在你程序中的资源文件中(比如是jpg或者png格式),然后读取到文件列表后,根据文件的扩展名来调用相应用的图标来显示
。
评论列表(0条)