以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 远程文件管理 中文是乱码,如何处理—已解决 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=24057) |
-- 作者:temblar -- 发布时间:2012/9/28 11:00:00 -- 远程文件管理 中文是乱码,如何处理—已解决 远程文件管理点击管理出现 550错误解决: 根目录里填服务器根目录下的子目录 管理文件乱码问题: 更改服务器ftp文件名和路径编码,具体怎么改问baidu 吧,各人ftp的方式不一样。 我用的是 serv-u 10.2
打开serv-u管理控制台——服务器限制和设置——ftp设置——右键禁用opts utf8, 全局属性——高级选项——去掉对所有已收发的路径和文件名使用utf-8的勾选 [此贴子已经被作者于2012-9-28 11:37:51编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2012/9/28 11:39:00 -- 呵呵,学习。 |
-- 作者:lin_hailun -- 发布时间:2012/9/28 12:27:00 -- 才刷新看到解决方法……弄死哥了,还以为是你自己做的一个ftp管理小工具。 下面是编码转换的一个方法。参考 http://msdn.microsoft.com/zh-cn/library/system.text.encoding%28v=vs.80%29.aspx \'上传的时候,转换编码 Dim file As String = "文件.txt" Dim bytes() As Byte Dim utf As Encoding = Encoding.GetEncoding("utf-8") \'这里填ftpClient的字符编码 Dim def As Encoding = Encoding.Default Bytes = def.GetBytes(file) Bytes = Encoding.Convert(def, utf, Bytes) \'把本机的编码转换成ftpClient编码的字节数组 file = def.GetString(Bytes) \'得到存储到ftpClient的字符(乱码) \'Output.Show(file) \'然后上传文件. 处理后,在本机是乱码,但上传到服务器,就正常 \'在本机显示的时候,也转换一下编码(因为是乱码) Dim file As String = "鏂囦欢.txt" Dim bytes() As Byte Dim utf As Encoding = Encoding.GetEncoding("utf-8") \'这里填ftpClient的字符编码 Dim def As Encoding = Encoding.Default Bytes = utf.GetBytes(file) Bytes = Encoding.Convert(utf, def, Bytes) file = utf.GetString(Bytes) \'Output.Show(file) [此贴子已经被作者于2012-9-28 12:27:26编辑过]
|