Ich kann das überhaupt nicht herausfinden. Ich tat:Modulo Arithmetik in Java, Android-Problem
int num = ((month-1)*30+day)%134;
//a,b,c are just for the Log
String a = String.valueOf(num);
String b = String.valueOf(month);
String c = String.valueOf(day);
Log.v("variables",a+","+b+","+c);
num ++;// don't want zero
String stringnum = String.valueOf(num);
Log.v("Index",stringnum);
Monat ist heute Monat, Tag ist heute (d. 31. Dezember = 12,31). In ANdroid wird dies aus KALENDER genommen. Jetzt lief dieses Programm gut bis heute. 1. Januar Was passiert, ist, dass die DB nach einer Zeichenkette mit Indexnummer sucht, die vom Datum übernommen wurde. Das Problem ist nicht in der DB, es ist in diesem Code. 1. Januar ist Monat = 0, Tag = 1, natürlich, aber nach mod 134 ich, mit freundlicher Genehmigung von LogCat:
01-01 12:07:38.554: VERBOSE/variables(6917): -29,0,1
Aber 1mod134 = -29!. Ich kann nicht verstehen, woher -29 kommt.
yep, ein obi-wan Fehler. mach sie jeden Tag selbst. –