FTP 下载问题

无名小猿 2014-01-15 01:41:08
ftp服务器是在Linux上,Linux上的编码是utf-8, 用ie浏览如果编码是gb2312时是乱码,换成utf-8就正常了,运行到 response = (FtpWebResponse)reqFTP.GetResponse(); 就报异常(550 文件不可用 找不到) 我在浏览器中访问是正常访问的,string urlpath = en.GetString( Encoding.Convert(en, Encoding.UTF8,en.GetBytes(path))); 用这段代码时有些可以找到,但有些就找不到,
求大神们帮忙,感激不尽!!!
...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
无名小猿 2014-01-16
  • 打赏
  • 举报
回复
原因应该是ftpwebrequest 没办法接受 char[] 这样的字节数组,所以把string转换成utf8 的byte[] 后,然后获取字符串后又转成unicode的了,所以现在不知道怎么给ftpwebrequest 传char[], java 里面的ftp包有设置字符集的,但是ftpwebrequest里面没有
wb_han 2014-01-15
  • 打赏
  • 举报
回复
UnicodeEncoding.Default试试呢
无名小猿 2014-01-15
  • 打赏
  • 举报
回复
引用 4 楼 hanwb2010 的回复:
你可以试试这个
/// <summary>
        /// 发送命令并获取应答码和最后一行应答字符串
        /// </summary>
        /// <param name="strCommand">命令</param>
        private void SendCommand(String strCommand)
        {
            Byte[] cmdBytes = Encoding.ASCII.GetBytes((strCommand + "\r\n").ToCharArray());
            socketControl.Send(cmdBytes, cmdBytes.Length, 0);
            ReadReply();
        }
试了,将 ascii 改成utf8 也不行
wb_han 2014-01-15
  • 打赏
  • 举报
回复
你可以试试这个
/// <summary>
        /// 发送命令并获取应答码和最后一行应答字符串
        /// </summary>
        /// <param name="strCommand">命令</param>
        private void SendCommand(String strCommand)
        {
            Byte[] cmdBytes = Encoding.ASCII.GetBytes((strCommand + "\r\n").ToCharArray());
            socketControl.Send(cmdBytes, cmdBytes.Length, 0);
            ReadReply();
        }
wb_han 2014-01-15
  • 打赏
  • 举报
回复
没用过Linux下的ftp,只能帮顶一下
无名小猿 2014-01-15
  • 打赏
  • 举报
回复
大神何在!!!!
无名小猿 2014-01-15
  • 打赏
  • 举报
回复
怎么这么冷清

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧