Freitag, 8. April 2011

Sozialversicherungsnummer überprüfen

Eine österreichische Sozialversicherungsnummer auf Gültigkeit zu überprüfen ist einfach, man multipliziert jede der 10 Stellen mit einer Ziffer, nimmt das ganze Modulo 11 und vergleicht die vierte Zahl der Nummer damit, hier mal ein Javacodeschnipsel:

 public static boolean checkSozialversicherungsnummer(String nr) {
  int checksum = 0;

  if (nr.length() != 10)
   return false;

  try {
   checksum += Character.getNumericValue(nr.charAt(0)) * 3;
   checksum += Character.getNumericValue(nr.charAt(1)) * 7;
   checksum += Character.getNumericValue(nr.charAt(2)) * 9;
   checksum += Character.getNumericValue(nr.charAt(4)) * 5;
   checksum += Character.getNumericValue(nr.charAt(5)) * 8;
   checksum += Character.getNumericValue(nr.charAt(6)) * 4;
   checksum += Character.getNumericValue(nr.charAt(7)) * 2;
   checksum += Character.getNumericValue(nr.charAt(8)) * 1;
   checksum += Character.getNumericValue(nr.charAt(9)) * 6;

   checksum = checksum % 11;

   return (Character.getNumericValue(nr.charAt(3)) == checksum);

  } catch (NumberFormatException ex) {
   return false;
  }
 }



1 Kommentar: