我使用Apache common-vfs来执行FTP操作。但是如果URL中有中文,会出现一些奇怪的问题。
我的代码是这样的:
String path = "ftp://user:pwd@localhost:21/foo/泰聚/说愚惭/询回撼舆/米曲浓树疚/窃窃尿押疆腔/bar";
String encodedPath = new String(path.getBytes("UTF-8"), "ISO-8859-1");
manager = VFS.getManager();
FileObject fo = manager.resolveFile(encodedPath);
fo.createFolder();
和Exception是这样的:
Caused by: org.apache.commons.vfs2.FileSystemException: Could not create FTP directory "ftp://test:***@localhost/test/æ°å¸/éä¸ç»/å¡èåä»»/åªæ²é¡¹æ å/侩èæè¨çç¾".
此异常不会每次都出现,似乎是由于某些单词的编码。