vb.net - 使用阿拉伯名称将文件上传到 ftp 服务器(编码错误)

标签 vb.net character-encoding ftp-server

我正在尝试将名称为阿拉伯语的文件上传到 ftp 服务器,我成功上传了文件,但我在 ftp 服务器上遇到问题,上传的文件名不正确并且格式不可读,例如“???????”或“*************"或阿拉伯语以外的任何格式。

我尝试将文件名编码为 UTF-8 或“默认”ANSI 编码,但失败了,我该怎么做才能解决这个问题? 以下代码用于在 VB .Net 中对文件路径进行编码:

FIleNamePath = Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(FIleNamePath))

提前致谢

最佳答案

如果我理解你是对的,那么问题是,用你的代码转换任何字符串都应该为你生成原始字符串。

dim input = "abcü"
dim output = Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(input))
assert.areEqual(input, output)

对我而言,此代码有效(使用德语变音符号)。

那么也许您的输入不是 UTF-8 字符串?尝试检查 Encoding.UTF8.GetBytes 产生的内容(有多少字符,尝试手动转换,...​​)

关于vb.net - 使用阿拉伯名称将文件上传到 ftp 服务器(编码错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10816274/

相关文章:

Vb.net图片框缩放

python - 在 Python 中写入 UTF-8 文件

java - Apache通用配置库: corrupted property file

c++ - 使用 stat 列出文件及其信息

c# - 如何在 C# 中使用 FileOpen (VB.NET)?

regex - 阿富汗电话号码的正则表达式验证

postgresql - 如何在 PostgreSQL 数据库中处理多种人类语言?

java - 如何使用java从FTPS服务器获取文件?

configuration - 在 CentOS 上无法登录 Webmin 设置的 ProFTPD

javascript - "Last refresh"更新面板后的消息