DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: cdk19821
今日帖子: 32
在线用户: 17
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 tigerbeer (tigerbeer) ★☆☆☆☆ -
普通会员
2014/6/27 21:21:22
标题:
delphi7+indy10.5.7使用idftp获取ftp服务器中文目录乱码 浏览:3989
加入我的收藏
楼主: 请问各位大虾如何解决?我在idfto.connect后加idftp.IOHandler.DefStringEncoding := TIdTextEncoding.ASCII不行,换了TIdTextEncoding.UTF8,TIdTextEncoding.Default都不行,中文出来都是问号。加了utf8ToAnsi也不行。求救!!!急!!!
----------------------------------------------
-
作者:
男 tigerbeer (tigerbeer) ★☆☆☆☆ -
普通会员
2014/6/27 22:38:59
1楼: 已解决,在idftp.pas第1458行:

FListResult.Text := ReadStringFromStream(LDest, -1, IOHandler.DefStringEncoding);
改为
FListResult.Text := Utf8ToAnsi(ReadStringFromStream(LDest, -1, TIdTextEncoding.ASCII));
----------------------------------------------
-
作者:
男 sbzldlb (边缘人) ★☆☆☆☆ -
盒子活跃会员
2014/6/28 9:40:45
2楼: 有些FTP需要转码,有些不需要,需要自己处理
----------------------------------------------
Delphi Android移动开发讨论论坛 老大富翁论坛历史数据搜索引擎
作者:
男 tigerbeer (tigerbeer) ★☆☆☆☆ -
普通会员
2014/6/28 16:21:07
3楼: 但这只能解决idftp.list(alist,'',false)的问题,无法解决idftp.list(aList)的乱码问题。请教各位!!!!
----------------------------------------------
-
作者:
男 tigerbeer (tigerbeer) ★☆☆☆☆ -
普通会员
2014/6/28 16:25:05
4楼: 跟踪代码在idftp.pas 2827行将
FListResult.Text := ReadStringFromStream(LDest, -1, Indy8BitEncoding);
改为
FListResult.Text := Utf8ToAnsi(ReadStringFromStream(LDest, -1, TIdTextEncoding.ASCII));
改后FlistResult.Text输出正常,但程序最终输出依然为乱码。
----------------------------------------------
-
作者:
男 tigerbeer (tigerbeer) ★☆☆☆☆ -
普通会员
2014/6/28 17:09:15
5楼: idftpListPhaseBase.pas第502行

    LI.FileName := TIdTextEncoding.UTF8.GetString(ToBytes(ParseFacts(AItem.Data, LFacts), Indy8BitEncoding));
改为
    LI.FileName := TIdTextEncoding.Default.GetString(ToBytes(ParseFacts(AItem.Data, LFacts), TIdTextEncoding.Default));
----------------------------------------------
-
作者:
男 sbzldlb (边缘人) ★☆☆☆☆ -
盒子活跃会员
2014/6/28 17:14:36
6楼: 得到了信息后,再进行解码,不需要在idftp中修改吧
----------------------------------------------
Delphi Android移动开发讨论论坛 老大富翁论坛历史数据搜索引擎
作者:
男 bxhjlf (狂飙蜗牛) ★☆☆☆☆ -
普通会员
2014/12/7 13:18:11
7楼: 还有别的办法吗,我的IdFTP不能修改
----------------------------------------------
-
作者:
男 lsz100 (lsz) ★☆☆☆☆ -
盒子活跃会员
2014/12/8 8:12:28
8楼: D7是ANSI INDY10 是UNIC 双字节 所以中文有问题 转换一下就行了 不用修改INDY
----------------------------------------------
我为人人为我
作者:
男 vga (vga) ★☆☆☆☆ -
盒子活跃会员
2018/5/31 15:26:31
9楼: IDFtp 一直没有解决好 乱码问题!!!
D10.2.3 也是这样。
----------------------------------------------
-
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2018/5/31 15:49:33
10楼: 从 D7 一路改过来,我们自己的的 FTP ,无论是服务器还是客户端从来没有乱码问题。

当然 高版本的 INDY 更简单,支持各种编码更容易。

对于恶心人的白痴写的的 FTP 服务器,使用各种高档 FTP 工具,一样乱码(IE 倒是不乱码,不过等下载的时候,就提示文件找不到,说明 IE 只是显示不乱码而已)。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 tianpanhaha (tianpanhaha) ▲▲▲▲△ -
普通会员
2018/5/31 17:04:24
11楼: idftp路径是有bug
----------------------------------------------
 QQ群:325010556 欢迎加入。
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS