Heim > Java > javaLernprogramm > Hauptteil

Lösung für das Problem verstümmelter chinesischer Verzeichnis- und Dateinamen, die von FTPClient in Java hochgeladen werden

巴扎黑
Freigeben: 2017-07-24 15:40:03
Original
4161 Leute haben es durchsucht

Problembeschreibung:

Wenn Sie org.apache.commons.net.ftp.FTPClient verwenden, um ein chinesisches Verzeichnis zu erstellen und einen chinesischen Dateinamen hochzuladen, werden die Chinesen im Verzeichnisnamen und Der Dateiname wird als „??“ angezeigt.

Grund:

Im FTP-Protokoll ist die Dateinamenkodierung ISO-8859-1, daher muss der Verzeichnisname oder Dateiname transkodiert werden.

Lösung:

1. Konvertieren Sie den chinesischen Verzeichnis- oder Dateinamen in ISO-8859-1-codierte Zeichen. Referenzcode:

Code kopieren Der Code lautet wie folgt:

String name="Verzeichnisname oder Dateiname";

Name =new String(name.getBytes("GBK"),"iso-8859-1");//Der konvertierte Verzeichnisname oder Dateiname.


2. Legen Sie die Linux-Umgebungsvariable fest

Kopieren Sie den Code Der Code lautet wie folgt:

export LC_ALL= "zh_CN.GBK"
export LANG="zh_CN.GBK"


Beispiel:

Code kopieren Der Der Code lautet wie folgt:


public boolean upLoadFile(File file, String path, String fileName) throws IOException {
boolean result = false;
FTPClient ftpClient = new FTPClient();
Versuchen Sie es mit {
ftpClient .connect(confService.getConfValue (PortalConfContants.FTP_CLIENT_HOST)); (PortalConfContants.FTP_CLIENT_PASSWORD));
ftpClient.setFileType(FTPClient .BINARY_FILE_TYPE);

// Verzeichnis erstellen

if (path != null && !"".equals(path.trim())) {

String[] paths = path.split( "/");
for (String onepath : paths ). );
if (!ftpClient.changeWorkingDirectory(onepath) ) {
                                                                                    );
eWorkingDirectory(onepath);
}
}

}


          result = ftpClient.storeFile(
new String(fileName.getBytes(" GBK"). logout();
}
Ergebnis zurückgeben;
}

Neu gepostet von:

Das obige ist der detaillierte Inhalt vonLösung für das Problem verstümmelter chinesischer Verzeichnis- und Dateinamen, die von FTPClient in Java hochgeladen werden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage