关于JAVA FTP连接后文件列表中的中文是乱码

Python011

关于JAVA FTP连接后文件列表中的中文是乱码,第1张

需要设置文件传输的格式,有2中格式 1:asicc 。2:binary格式 也就是二进制格式,并且ftpClient提供了相应的方法,asicc(),barry(),你要在连接ftp的时候加上此方法,ftpClient.binary()

需要转一下编码,你的java的class文家中是GBK的编码,对面linux下是iso8859-1编码

String fileNameTmp = new String(files[i].getBytes("iso-8859-1"), "GBK")//将从linux取得的文件名转换为GBK编码

String filename=fileNameTmp .substring(regStr.length()+1,fileNameTmp .length())

然后再把转完编码的文件名按你的要求进行截取