看起来标准的Java URL类FTP客户端无法使用具有“@”和“。”等字符的用户名。
我从托管服务提供商处获得的用户名是“username@domain.com”,因此整个网址看起来像“ftp://username@domain.com:password@domain.com”。它与所有ftp客户端完美配合,但显然不适用于Java。任何建议
答案 0 :(得分:6)
您是否尝试对这些字符进行编码,即username%40domain.com:password
?
String ftpUser = URLEncoder.encode(username, "UTF-8");
String ftpPass = URLEncoder.encode(password, "UTF-8");
String url = String.format("ftp://%s:%s@domain.com", ftpUser, ftpPass);