Pourquoi reçois-je des IllegalFormatConversionException en Java pour ce code?

Je suis actuellement en train de travailler sur un code qui prend de données à partir du réseau et de l'imprimer sur un JTextArea. Entre les deux, je suis en train d'alignement le nombre en fonction de la position du point décimal. C'est le code qui fonctionne avant de mettre en œuvre la virgule alignement:

private static final String NewLine = System.getProperty("line.separator");
String NetString = "";
byte[] data = p.getData();
NewString += "SID:     " + BuildShort(data,4) + NewLine;
NewString += "DID:     " + BuildShort(data,6) + NewLine;

Et c'est le nouveau

NewString += String.format("%-8s%11.5f" + NewLine, "SID    : ", BuildShort(data,4));
NewString += String.format("%-8s%11.5f" + NewLine, "DID    : ", BuildShort(data,6));

laquelle j'ai reçu le message d'erreur

Exception in thread "Thread-2" java.util.IllegalFormatConversionException: f != java.lang.Integer
at java.util.Formatter$FormatSpecifier.failConversion(Unknown Source)
at java.util.Formatter$FormatSpecifier.printFloat(Unknown Source)
at java.util.Formatter$FormatSpecifier.print(Unknown Source)
at java.util.Formatter.format(Unknown Source)
at java.util.Formatter.format(Unknown Source)
at java.lang.String.format(Unknown Source)
at MT302.ParsePacket(MT302.java:97)
at MK20_DataView.run(MK20_DataView.java:261)
at java.lang.Thread.run(Unknown Source)

Savez-vous pourquoi je reçois cette erreur?

vous avez à nous dire, ce que le type de retour de BuildShort(data,4) est. (Et pourquoi vous êtes de départ de la méthode/de noms de variables avec une majuscule en Java. Ce n'est pas C# ^^)

OriginalL'auteur user1590710 | 2012-08-13