Ich habe versucht, ISBN10-Codes mit Java in ISBN13-Nummern umzuwandeln. Von . Auf isbn-13.info habe ich den Weg gefunden, sie zu konvertieren.
Beispiel: 0-123456-47-9
- Beginnen Sie mit dem Präfix "978"
- Verwenden Sie die ersten neun numerischen Zeichen der ISBN (einschließlich Bindestriche) 978-0-123456-47 -
- Berechnen Sie die EAN-Prüfziffer mit dem "Mod 10 Algorithmus" 978-0-123456-47-2
Mit diesem habe ich ein Java-Programm erstellt, um die Konvertierung durchzuführen.
%Vor% Für das Beispiel ISBN10 Code 9513218589
( 978951321858
ISBN13 ohne die Prüfnummer) gibt es 5 als Prüfnummer zurück. Wenn ich es mit dem Konverter auf der offiziellen Website der ISBN berechne, bekomme ich 4 als Prüfsumme. Aus irgendeinem Grund ist die Summe der Zahlen im neuen Code um eins niedriger als es sein sollte.
Ich habe lange damit zu kämpfen und glaube, dass ich blind begonnen habe: Ich kann einfach nicht finden, was ich falsch mache. Könnte jemand dabei helfen?
Hier gehts
%Vor%entschuldigen Sie die Protokollzeilen dazwischen, ich kopiere es aus einem Android-Projekt, an dem ich gerade arbeite
Im
für (int i = 0; i & lt; isbn13.length (); i ++) { Summe + = Character.getNumericValue (isbn13.charAt (i)); }
Sie addieren alle Ziffern der ISBN, einschließlich der doppelten.
Beispiel:
Ziffer 7 - & gt; doppelt = 14
Sie fügen der Summe 14 hinzu. Das sollte
seinZiffer 7 - & gt; Doppel = 14 - & gt; größer als 9? Ja, also 1 + 4 = 5
und Sie sollten 5 hinzufügen.