Décrivez les points qui ont été difficiles dans la gestion des erreurs lors de l'implémentation de la fonction de téléchargement de fichiers dans java.
[Point] Ne fermez pas automatiquement le flux de sortie Fermer seulement à la fin de la normale Réinitialiser la réponse avec l'instruction catch et ne pas fermer
OS:Windows8.1 32bit eclipse:4.5.2
Dans la source d'origine, le processus de fermeture était décrit dans l'instruction try-catch-resouses et la clause finally.
try {
//Obtenez le flux d'entrée du fichier à télécharger
//Obtenir le flux de sortie de la réponse
//Écrire du flux d'entrée vers le flux de sortie
} catch(Exception e) {
//Gestion des exceptions
} finally {
//Fermer le traitement
}
}
Avec cette source, il n'y a pas de problème lors de la fin normale, mais comme la réponse est fermée même lorsqu'une exception se produit, les fichiers qui ne sont pas normaux côté client sont téléchargés.
Par conséquent, apportez les modifications suivantes.
try {
//Obtenez le flux d'entrée du fichier à télécharger
//Obtenir le flux de sortie de la réponse
//Écrire du flux d'entrée vers le flux de sortie
//Fermer le traitement uniquement au moment de la fin normale
} catch(Exception e) {
//processus de réinitialisation de la réponse
//Gestion des exceptions
}
}
Avec cela, il ne sera téléchargé que lorsqu'il se termine normalement, et un écran d'erreur peut être affiché lorsqu'une exception se produit.