TIdMultiPartFormDataStream组件中中文文件名的问题

nj_ww 2009-10-31 04:41:21
delphi实现上传文件的客户端非常简单,代码如下

var
stream: TIdMultiPartFormDataStream;
IdHTTP1: TIdHTTP;
begin
stream := TIdMultiPartFormDataStream.Create;
stream.AddFile(tag_name, filename, GetMIMETypeFromFile(filename));
IdHTTP1.Post(URL,stream)

end;

这里面的tag_name就是<input>表单里面的name,用来在服务器端区分文件的,当然通过文件名也能够区分.

有一个问题是,indy这个控件TIdMultiPartFormDataStream,用本地编码就把文件名传上去了好像就有问题。
我是给jira系统的上传附件的,使用中文名就上传不成功,如果改成英文名就没有问题。
不知道怎么解决。
...全文
775 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
jozosoft 2009-11-11
  • 打赏
  • 举报
回复
1、可能是编码的原因吧
2、jira好像只关注附件本身,并不关注文件名,所以,楼主可以把那个文件 临时复制到某一个特定目录下,再改为E文,然后上传。
  以前我们一个C#的系统用FTP时也是这种问题,后来就是用此法。
3、诚邀楼主指点一下小弟的类似一个问题:
http://topic.csdn.net/u/20091110/16/e9eb6017-120c-4047-a942-650abd01a23a.html

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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