8 votes

Limite de caractères pour System.out.println() en Java

Existe-t-il une limite de caractères pour la sortie de la fonction Java System.out.println(String x) déclaration ?

Lorsque j'essaie d'imprimer un fichier XML à partir d'un appel à un service web en utilisant la fonction System.out.println() mais seule une partie est imprimée dans la console.

La chaîne XML que j'essaie d'imprimer est énorme.

Pourquoi cela se produit-il ?

20voto

quaylar Points 1234

En faites-vous l'expérience dans le cadre d'Eclipse ? Si c'est le cas :

EDITAR :

  1. Allez dans Fenêtre > Préférences > Exécuter/Déboguer > Console
  2. Décochez la case "Limiter la sortie de la console" (vous pouvez également augmenter la taille de la mémoire tampon de la console).

Source

4voto

JB Nizet Points 250258

Je pense que vous ne voyez que la dernière partie de la chaîne parce que la console a un nombre limité de lignes qu'il peut afficher.

Envisagez l'enregistrement dans un fichier à partir de Java, ou la redirection de la sortie standard du programme vers un fichier :

java com.foo.bar.Main > output.log

4voto

Jivings Points 10892

Vous êtes limité par la taille maximale d'une chaîne Java. C'est tout. Cela devrait être l'équivalent de length Integer.MAX_VALUE (2147483647), qui est la taille maximale d'un tableau, puisqu'une chaîne est un tableau de caractères.

Sinon, c'est la limite de capacité de la console Eclipse, comme d'autres l'ont dit.

3voto

Eng.Fouad Points 44085

Si vous utilisez Eclipse, c'est parce que la capacité de la console de sortie d'Eclipse est limitée. Voir cette question de l'OS : Comment augmenter la capacité de la console de sortie d'Eclipse ?

2voto

Emily Points 633

Je sais qu'en imprimant de très longues chaînes de caractères dans la console Eclipse, une partie ou la totalité de la chaîne devient invisible. Il est possible que vous souhaitiez diviser votre xml en morceaux. Si vous ne voyez que la queue du xml, je pense que c'est le tampon de la console qui en coupe une partie. @Quaylar a posté un lien à ce sujet.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X