tobias86 Geschrieben 4. Mai 2008 Geschrieben 4. Mai 2008 hallo. ich hab jetzt schon einige zeit gesucht, aber irgendwie immer nur sachen gefunden, die bei mir nicht so recht funktioniert haben. folgendes problem: ich will einen String in ein wchar_t umwandeln und das so einfach wie möglich. meine c++ kenntnisse halten sich leider sehr in grenzen, deswegen wäre ich euch sehr dankbar, wenn ihr mir mit einem kompletten codebeispiel (incl. aller include anweisungen etc.) helfen könntet. mfg Tobias
Klotzkopp Geschrieben 5. Mai 2008 Geschrieben 5. Mai 2008 "String" ist etwas unspezifisch. Was genau hast du denn da? Welcher Datentyp? Welche Codierung?
tobias86 Geschrieben 5. Mai 2008 Autor Geschrieben 5. Mai 2008 also, das ganze kommt ursprünglich aus einer java datei, ist also ein jstring. umwandeln kann ich ihn in ein const char *. und daraus muss ich nun ein wchar_t machen.....
Klotzkopp Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 umwandeln kann ich ihn in ein const char *. und daraus muss ich nun ein wchar_t machen.....Damit hätten wir den Typ. Und wie ist der String codiert? Reines ASCII? UTF-8?
TDM Geschrieben 6. Mai 2008 Geschrieben 6. Mai 2008 JNIEnv::GetStringUTFChars const jbyte* GetStringUTFChars(JNIEnv *env, jstring string, jboolean *isCopy); Returns a pointer to an array of UTF-8 characters of the string. This array is valid until it is released by ReleaseStringUTFChars(). If isCopy is not NULL, then *isCopy is set to JNI_TRUE if a copy is made; or it is set to JNI_FALSE if no copy is made. Alternativ GetStringChars(), dann hat er es gleich als Unicode. jbyte dürfte simultan zu char sein, von daher dürfte das nichtmal nen Cast benötigen. Und wie man char zu wchar_t macht steht ja oben im Link.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden