troncature de texte bufferedwriter dans le fichier de sortie
Ce programme Java transforme les données CSV en commandes SQL pour l'insertion de données en une table. Cependant, il rencontre un problème où tout le texte transformé n'apparaît pas dans le fichier SQL de sortie.
Le fichier source contient plus de 10 000 lignes de données, et le programme fonctionne apparemment correctement, mais il s'arrête brusquement à mi-chemin en générant une instruction SQL. Cette troncature se produit généralement après avoir traité environ 10 000 lignes, laissant plusieurs centaines de lignes non lues. BufferedWriter maintient en interne un tampon qui stocke temporairement les données écrites. La taille du tampon par défaut est de 8192 caractères, qui peut accueillir des centaines de lignes de texte. Lorsque le tampon atteint la capacité ou lorsque le flux est fermé, les données sont rincées dans le fichier sous-jacent.
Dans ce cas, la taille du tampon est suffisante pour maintenir toutes les lignes de données traitées. Cependant, jusqu'à ce que le tampon soit rincé, les données ne sont pas réellement écrites dans le fichier. La fermeture de l'OutputStream déclenche explicitement le processus de rinçage, garantissant que tout le texte transformé est écrit en fichier SQL.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3