2010-12-10 26 views
2

J'utilise un java RTFEditorKit qui convertit RTF en texte la plupart du temps. Parfois, je vais rencontrer un fichier où, au lieu de la conversion en cours, je reçois ce qui suit:close-group problem java RTFEditorKit

java.io.IOException: Trop de groupes proches dans le texte RTF à javax.swing.rtf.RTFParser.write (Source inconnue)

J'ai regardé autour d'Internet mais ne vois pas une solution prête à ce problème.

Quelqu'un d'autre a vu cela et sait quoi faire?

Merci,

Elliott

+0

Quand vous regardez le code de la RTFEditorKit, il y a un commentaire qui dit « Groupes Début Fin ne sont pas synchronisées ». Je ne sais pas si cela veut dire quelque chose à qui que ce soit. Mais voilà, juste au cas où. – Elliott

+0

Le code RTFEditor a un commentaire où cette exception est levée "Les groupes de fin de démarrage ne sont pas synchronisés." Je ne sais pas si cela ajoute de la clarté à la situation, mais c'est ce qu'elle dit. – Elliott

Répondre

1

Selon le code, cette exception sera levée si vous avez plus d'accolades de fermeture que l'ouverture des accolades dans votre RTF. On dirait que votre fichier est probablement mal formé.

Voici le code qui lève l'exception:

else if(ch == '}') { 
    if (currentCharacters.length() > 0) { 
    handleText(currentCharacters.toString()); 
    currentCharacters = new StringBuffer(); 
    } 
    if (level == 0) 
    throw new IOException("Too many close-groups in RTF text"); 
    endgroup(); 
    level --; 
}