Dieser Artikel beschreibt die von Java implementierte Datei -Upload- und Download -Toolklasse. Teilen Sie es für Ihre Referenz wie folgt weiter:
Dies ist eine Tool -Klasse, die Java -Sprache verwendet, um Dateien in der Eclipse -Umgebung hochzuladen und herunterzuladen. Wie die zuvor eingeführte C# -Datei -Upload- und Download -Toolklasse, um die Duplikation von Dateinamen auf dem Server zu vermeiden, wird der Dateinamen auf dem Server in Form von "Serverzeit (definiert in Millisekunden) + Dateiname + Datei -Suffix" verwendet. Während des Downloadprozesses wird Spring MVC Responseentity für den Datei -Download verwendet, der einen Byte -Stream zurückgibt. Nachdem der Download erfolgreich ist, kann der Speicherpfad der Datei angepasst werden.
Der spezifische Quellcode lautet wie folgt:
Paket com.utils; import java.io.file; import Java.io.ioxception; import Java.io.inputStream; Import Java.io.unsupportedenCodingException; Import Java.Text.SimpledateFormat; Import Java.util. org.springframework.http.httpheaders; import org.springframework.http.httpstatus; Verzeichnis nach dem Pfad. Wenn es kein Verzeichnis gibt, erstellen Sie das Verzeichnis * * @param path */ private static void createdir (String Pfad) {Datei fileDir = new Datei (Pfad); if (! fateDir.exists () &&! fateDir.isdirectory ()) {// Bestimmen Sie, ob das/download -Verzeichnis fileDir.mkdir (); // Verzeichnis erstellen}}/*** Die Dateiname in den Dateiname analysieren upload Pfad der Datei** @Param -Dateiname* @return Dateinamen auf dem Server -Server auf den Server auf den Server. erstellte (Pfad); Datum Datum = neuer Datum (); SimpleDateFormat DateFormat = new SimpledateFormat ("yyyymmddhhmmssssss"); // Define to Milliseconds String nowstr = DateFormat.Format (Datum); String fileNamestern = fileName.substring (0, Dateiname.lastIndexof (".")); // Entfernen Sie den Dateinamen des Suffix -String -Suffix = Dateiname.substring (Dateiname.lastindexof (".") + 1); // Suffix if (fileName.lastIndexof (". Die Datei existiert nicht Pfad + = "//" + filenamestr + nowstr + "." + Suffix; // Definieren Sie den Upload -Pfad} Rückgabepfad; }/ ** * Remind Datei herunterladen * * @param Dateiname * @param path * @return */ public static responseentity <Byte []> DownloadFile (String -Dateiname, String -Pfad) {try {Dateiname = new String (Dateiname.getBytes ("GB2312"), achten Sie auf Chinese, "ISO_889_1"). (UnsupportedenCodingException E1) {e1.printstacktrace (); } Datei Datei = neue Datei (Pfad); HttpHeaders headers = new httphoeders (); Headers.SetContentType (mediatype.application_octet_stream); Header.SetContentDispositionFormData ("Anhang", Dateiname); Responseentity <Byte []> bytearr = null; try {bytearr = new responseentity <byte []> (FileUtils.ReadFileToBytearray (Datei), Header, httpstatus.ok); } catch (ioException e) {e.printstacktrace (); } return bytearr; } / ** * Schreiben Sie Daten aus dem Eingabestream in ein Byte -Array * * @param in * @return * / public static byte [] InputStream2Bytearray (InputStream in, boolean isclose) {byte [] bytearray = null; try {int Total = in.Available (); bytearray = new byte [insgesamt]; in.read (Bytearray); } catch (ioException e) {e.printstacktrace (); } endlich {if (isclose) {try {in.close (); } catch (Ausnahme e2) {System.out.println ("Close Curne fehlgeschlagen"); }}} return bytearray; }}Für weitere Informationen zu Java -Algorithmen können Leser, die an dieser Website interessiert sind, die Themen "Zusammenfassung von Java -Dateien und Verzeichnisbetriebskenntnissen", "Tutorial über Java -Datenstrukturen und Algorithmen", "Zusammenfassung der Java Operation Dom Node Skills" und "Zusammenfassung der Java -Cache -Fähigkeiten" anzeigen "
Ich hoffe, dieser Artikel wird für Java -Programme aller hilfreich sein.