3

名前がアラビア語で書かれたファイルを ftp サーバーにアップロードしようとしましたが、ファイルのアップロードには成功しましたが、ftp サーバーに問題があり、アップロードされたファイル名が正しくなく、"?? ??????」または " * ** * ** * ** * ** * " またはアラビア語以外の形式。

ファイル名を UTF-8 または「デフォルト」の ANSI エンコーディングにエンコードしようとしましたが、この問題を解決するにはどうすればよいですか? VB .Net でファイル パスをエンコードするために使用される次のコードを次に示します。

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

前もって感謝します

4

1 に答える 1

0

問題は、コードを使用して文字列を変換すると、元の文字列が生成されることです。

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

私にとって、このコードは機能します(ドイツ語のウムラウトを使用)。

入力が UTF-8 文字列ではないのではないでしょうか? Encoding.UTF8.GetBytes が生成するものを確認してみてください (文字数、手動で変換してみてください...)

于 2012-09-07T09:24:53.093 に答える