JNI if abfrage gibt immer false zurück.

RedFox

Mitglied
Abend,

ich will mit JNI nen MD5 Hash vergleichen, aber obwohl die Hashes übereinstimmen gibt er nicht true zurück.

Java:
JNIEXPORT jboolean JNICALL Java_Identify_callIdent(JNIEnv *env, jobject obj, jstring hash) {
	bool isTrue = false;
	if(env->GetStringUTFChars(hash, false) == "98f6bcd4621d373cade4e832627b4f6") {
		isTrue = true;
	}
	return isTrue;
}

Der Code Funktioniert wunderbar bis halt das er immer false zurück gibt...
Ist vielleicht der String falsch das der das nicht erkennt oder so?
Einer ne Idee?
 
Zuletzt bearbeitet:

Marco13

Top Contributor
Auch bei C gilt, dass man Strings nicht einfach mit == vergleichen kann - außer 'string's bei C++. Bei GetStringUTFChars kriegt man ein jbyte-Array zurück. Das muss man entweder in einen char* umwandeln und dann mit strncmp vergleichen, oder in einen 'string' und dann mit ==.
 

RedFox

Mitglied
Tag,

Auch bei C gilt, dass man Strings nicht einfach mit == vergleichen kann - außer 'string's bei C++. [...]

Konnte ich mir schon fast denken.

[...] Bei GetStringUTFChars kriegt man ein jbyte-Array zurück. Das muss man entweder in einen char* umwandeln und dann mit strncmp vergleichen, oder in einen 'string' und dann mit ==.

Habs jetzt rausgefunden, wenn ich
Java:
(*env)->GetStringUTFChars(env, hash, NULL);
benutzen würde (C) dann würde ein jbyteArray raus kommen.

Ich benutze aber:
Java:
env->GetStringUTFChars(hash, false);
(C++) und das gibt einen char * raus, aber dadurch hab ich die lösung gefunden.

Danke an alle ;)

Fals einer die lösung sehen will:
Java:
JNIEXPORT jboolean JNICALL Java_bluewall_kernel_Identify_callIdent(JNIEnv *env, jobject obj, jstring hash) {
	bool isTrue = false;

	std::string hashString = env->GetStringUTFChars(hash, false);
	if(hashString == "98f6bcd4621d373cade4e832627b4f6") {
		isTrue = true;
	}
	return isTrue;
}
(Fals da iwas nicht passt, bitte bescheit sagen.)

Und nicht vergessen string zu includeren ;)
 

Antoras

Top Contributor
Code:
bool foo() {
  bool isTrue = false
  if (x == y) isTrue = true
  return isTrue
}

==>

bool foo() {
  return x == y
}
Sieht IMHO schöner aus und ist einfacher zu lesen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z Boolean Abfrage gibt kein Boolean zurück, aber warum? Allgemeine Java-Themen 6
B Wie erstelle ich dazu eine Abfrage ob der Button gedrückt wurde? Allgemeine Java-Themen 8
J Mehrfache if-else-Abfrage zusammenfassen Allgemeine Java-Themen 51
L 2 Dimensionale ListArray Abfrage nach einem Wert suchen Allgemeine Java-Themen 5
I Wie kann ich den Wert aus einer If abfrage ausgeben Allgemeine Java-Themen 23
Zeppi NullPointerException in einer if-Abfrage Allgemeine Java-Themen 6
1Raini Java if-Abfrage funktioniert nicht! Allgemeine Java-Themen 3
tom.j85 Exception bei Abfrage von Ländercodes in API? Allgemeine Java-Themen 13
T Fehler bei IF abfrage Allgemeine Java-Themen 8
D Mehrdimensionale Abfrage Allgemeine Java-Themen 15
MiMa If-Abfrage mit Parameter Allgemeine Java-Themen 8
kodela Binäre Abfrage Allgemeine Java-Themen 12
D MAC Adressen Abfrage Allgemeine Java-Themen 5
J Problem bei Hashmap Key-Abfrage Allgemeine Java-Themen 4
B Swing Hilfe bei Abfrage von Benutzernamen und Passwort Allgemeine Java-Themen 2
J If Abfrage funktioniert nicht Allgemeine Java-Themen 4
B Java Abfrage Netzbetrieb oder Akkubetrieb Allgemeine Java-Themen 1
T Login-Abfrage Allgemeine Java-Themen 3
T Login mit LDAP-Abfrage Allgemeine Java-Themen 3
M Event Handling Tastatur abfrage Allgemeine Java-Themen 5
2 If-Abfrage um Uhrzeit einzuordnen Allgemeine Java-Themen 2
F Java ip abfrage mit Dateiausgabe ? Allgemeine Java-Themen 2
V Java Editor Problem mit ! bei if-Abfrage Allgemeine Java-Themen 5
N Schlüsselworte if abfrage ob linke oder rechte maustaste gedrückt ist Allgemeine Java-Themen 5
H args abfrage vereinfachen Allgemeine Java-Themen 7
P Tastatur abfrage ohne KeyListener Allgemeine Java-Themen 3
E Methoden Server Benutzer abfrage Allgemeine Java-Themen 2
D Internet Abfrage aber mit Warteschleife Allgemeine Java-Themen 6
B Kapselung if-Abfrage bei "MVC-verteilten" Listenern Allgemeine Java-Themen 5
S if-Abfrage Allgemeine Java-Themen 5
T Wiederholte Abfrage? Allgemeine Java-Themen 5
B abfrage ob file ausgeführt wurde Allgemeine Java-Themen 4
P Google Abfrage auslesen Allgemeine Java-Themen 2
MQue Performance Methodenaufruf - if Abfrage Allgemeine Java-Themen 19
W ICQ Status Abfrage mit Java Allgemeine Java-Themen 3
M if - else Abfrage beenden Allgemeine Java-Themen 4
MQue if- Abfrage Allgemeine Java-Themen 4
B Abfrage ob JRE installiert ist, JAR automatisch starten Allgemeine Java-Themen 5
MQue if Abfrage Allgemeine Java-Themen 27
MQue if- Abfrage Allgemeine Java-Themen 26
C Versionsstring Abfrage Allgemeine Java-Themen 7
G Tastatur abfrage Allgemeine Java-Themen 8
D Doppeltverschachtelte if-Abfrage Allgemeine Java-Themen 10
Z mit java htaccess - abfrage bestätigen/umgehen Allgemeine Java-Themen 2
U if Abfrage macht etwas falsch Allgemeine Java-Themen 2
G Problem mit if-Abfrage bei Benutzeingabe Allgemeine Java-Themen 2
P Java Acces Datenbank Problem ! (Brauche eine Abfrage) Allgemeine Java-Themen 5
K Abfrage ob JRE oder JDK auf System installiert ist. Allgemeine Java-Themen 12
T IF Abfrage + YES_NO Option mittels JOptionPane Allgemeine Java-Themen 3
U IF-Abfrage Allgemeine Java-Themen 17
H Java-Abfrage Allgemeine Java-Themen 9
A FileChooser Datei-Überschreiben Abfrage Allgemeine Java-Themen 2
F Java Passwort abfrage Allgemeine Java-Themen 2
S CDDB-Abfrage mit Java unter Linux? Allgemeine Java-Themen 4
L Datenbank Abfrage (Felder&Tabelle nicht fix) in ArrayLis Allgemeine Java-Themen 4
S Integer-splitten für Abfrage. Allgemeine Java-Themen 4
G Abfrage in datenbank Allgemeine Java-Themen 5
berserkerdq2 Gibt es eine saubere Dokumentation von Jfoenix? Allgemeine Java-Themen 1
T Verschachtelte For-Schleife gibt falschen Wert zurück, Abbruchbedingung evtl. falsch? Allgemeine Java-Themen 9
E Class.getResourceAsStream() gibt null zurück Allgemeine Java-Themen 2
Tiago1234 CellReference cr = new CellReference("") gibt den falschen Wert zurück Allgemeine Java-Themen 49
F Gibt es mittlerweile eine Alternative zu DaisyDiff Allgemeine Java-Themen 2
Jose05 Gibt es einen Nachteil bei dem JDK 8? Allgemeine Java-Themen 7
H Apache fop -- welche Möglichkeit gibt es um den Fortschritt anzuzeigen (Progressbar) Allgemeine Java-Themen 5
M Warum gibt es Unterschiedliche Kommentar Zeichen Allgemeine Java-Themen 15
Tobero Eclipse Window builder gibt es da sowas wie @ignore? Allgemeine Java-Themen 1
pkm javax.script.ScriptEngineManager gibt mir keine Engine Allgemeine Java-Themen 4
M Openjdk - gibt es auch eine Openjre? Allgemeine Java-Themen 7
Zrebna Gibt es eine Möglichkeit eine NPE zu vermeiden, wenn null returned wird? Allgemeine Java-Themen 3
S Gibt es eine Moeglichkeit die Runtime Ausführung zu analysieren..? Allgemeine Java-Themen 7
R Schlüsselworte "Throw new exception" gibt nicht den String als Fehlermeldung aus Allgemeine Java-Themen 2
F Überprüfen ob es Überschneidungen von Uhrzeiten (vom Typ Calendar) gibt Allgemeine Java-Themen 10
M Gibt es eine API die den aktuellen Wert eines Indikators beim Trading zurückgibt? Allgemeine Java-Themen 7
X Collections Gibt es eine Klasse welche die Vorteile von List und HashMap vereint, aber konstante Laufzeit (O(1)) hat in Java? Allgemeine Java-Themen 4
LimDul Spezifkation, wann es deprecation Warnings gibt Allgemeine Java-Themen 1
C Variablen == gibt immer false aus. Allgemeine Java-Themen 2
E gibt es BigDouble in Java ? Allgemeine Java-Themen 14
S Gibt es eigentlich Java Source Code Interpreter..? Allgemeine Java-Themen 13
P Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff Allgemeine Java-Themen 2
R JDK installieren Gibt es ab 2019 überhaupt noch Java? Allgemeine Java-Themen 6
P JSpinner gibt leeren Wert zurück Allgemeine Java-Themen 5
B Gibt es eine Funktion die den Datentyp einer Variablen ermittelt? Allgemeine Java-Themen 8
N Gibt es etwas allgemeineres as Object? Allgemeine Java-Themen 16
T Input/Output Konsole gibt trotz printf keine Umlaute aus Allgemeine Java-Themen 17
H NetBeans geotools 15 oder 16 - welche Abhängingkeiten gibt es? Welche Jars brauche ich? Allgemeine Java-Themen 4
P Prüfen ob es Variable mit Namen gibt der als String übergeben wird Allgemeine Java-Themen 7
S Welche Java Techologien gibt es fürs Frontend Allgemeine Java-Themen 4
V Gibt es eine Möglichkeit die Internet auslastung mit Java auszulesen Allgemeine Java-Themen 11
L Gibt es in Java einen Property Editor? Allgemeine Java-Themen 2
S gibt testText nicht aus Allgemeine Java-Themen 3
R Es gibt keine dummen Fragen (hab ich mal gehört) Allgemeine Java-Themen 11
L Methoden Methode gibt mir beim verschlüsseln mit RSA 0 bytes aus ? Allgemeine Java-Themen 1
H Gibt es einen großen Unterschied zwischen Java 6 und Java 7? Allgemeine Java-Themen 3
L Konsole gibt Smileys aus Allgemeine Java-Themen 3
K Gepacktes Jar-File gibt beim Doppelklick eine Exception aus Allgemeine Java-Themen 4
O Collections ListIterator gibt Inhalt von ArrayList nicht aus Allgemeine Java-Themen 3
G Threads Gibt es eine Möglichkeit des Nichtblokierens? Allgemeine Java-Themen 5
C Vergleich von Enums gibt inkorrekte Werte Allgemeine Java-Themen 6
Jats Programm mit CMD Befehl hängt sich auf oder gibt error = 5 aus Allgemeine Java-Themen 4
V Gibt es einen Variablen Cast? Allgemeine Java-Themen 8

Ähnliche Java Themen

Neue Themen


Oben