lorsque j'essaie d'exécuter l'application, j'ai trouvé le message d'erreur dans logcat, NullPointerException
. Où le code qui fait cette erreur est montré ci-dessous. Le str est obtenu d'une autre classe qui s'appelle MD5encoder
. Le code affiché ci-dessous aussi. la chaîne md 5 = MD5Encoder.encode(str)
et le curseur provient du mainActiviry
. MD5encoder
est une autre classe d'un fichier java où j'importe à MainActivity
. Je me demande est-ce le curseur où md5 = ?
, nouvelle chaîne ne peut pas obtenir le str ou la valeur de sorte qu'il lance un NullPointerException
. Quelqu'un a une idée à ce sujet?exception fatale: thread 8, java.nullpointerexception
String md5 = MD5Encoder.encode(str);
Cursor cursor = db.rawQuery("SELECT desc FROM datatable WHERE md5 = '?' ",new String[] { md5 });
public class MD5Encoder {
public static String encode(String source){
String result = null;
try {
MessageDigest md = MessageDigest.getInstance("md5");
byte[] output = md.digest(source.getBytes());
StringBuffer sb = new StringBuffer();
for(int i=0;i<output.length;i++){
String s = Integer.toHexString(0xff&output[i]);
if(s.length()==1){
sb.append("0"+s);
}else{
sb.append(s);
}
}
result= sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return result;
}
}
afficher les traces de pile – Raghunandan