Es gibt zwei Situationen, in denen die JAVA-Datei beim Herunterladen verstümmelt ist: (Empfohlen: Java-Video-Tutorial)
1. Der chinesische Dateiname ist beim Herunterladen verstümmelt
2. Da der Pfad beim Herunterladen verstümmelte chinesische Dateinamen enthält, wird angezeigt, dass die Datei nicht gefunden werden kann
Die Lösung finden Sie im folgenden Teil des Codes
response.setContentType("multipart/form-data"); String userAgent = request.getHeader("User-Agent"); String oraFileName = meetingFile.getFileName(); String formFileName=oraFileName; // 针对IE或者以IE为内核的浏览器: if (userAgent.contains("MSIE") || userAgent.contains("Trident")) { formFileName = java.net.URLEncoder.encode(formFileName, "UTF-8"); } else { // 非IE浏览器的处理: formFileName = new String(formFileName.getBytes("UTF-8"), "ISO-8859-1"); } response.setHeader("Content-disposition", String.format("attachment; filename=\"%s\"", formFileName)); response.setContentType("application/vnd.ms-excel;charset=utf-8"); response.setCharacterEncoding("UTF-8"); ServletOutputStream out; // 通过文件路径获得File对象 File file = null; if (meetingFile != null) { file = new File(path + "upload/"+oraFileName); }
(1) Wenn der erste verstümmelte Code eingegeben wird, stößt die Download-Seite auf das folgende chinesische verstümmelte Problem
Verwenden Sie den folgenden Code, um es zu lösen
(2) Beim Herunterladen ist das zweite verstümmelte Problem aufgetreten, wie im Bild gezeigt:
Verwenden Sie den folgenden Code, um es zu lösen: Stellen Sie zunächst sicher, dass Tomcat , Eclipse usw. sind UTF-8-codiert
In JAVA ist dies dann von der ersten Codierung der Dateinamen getrennt, sodass sie separat codiert werden und keinen Einfluss haben gegenseitig.
Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.
Das obige ist der detaillierte Inhalt vonLösung für den verstümmelten chinesischen Java-Dateinamen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!