Je télécharge une chaîne de texte à partir d'un service Web dans un RBuf8 en utilisant ce type de code (cela fonctionne ..)RBuf8 char * dans Symbian C++
void CMyApp::BodyReceivedL(const TDesC8& data) {
int newLength = iTextBuffer.Length() + data.Length();
if (iTextBuffer.MaxLength() < newLength)
{
iTextBuffer.ReAllocL(newLength);
}
iTextBuffer.Append(data);
}
Je veux ensuite convertir le RBuf8 en omble chaîne * je peux afficher dans une étiquette ou tout .. ou aux fins de débogage, affichage dans
RDebug::Printf("downloading text %S", charstring);
modifier pour plus de clarté ..
Ma conversion foncti sur ressemble à ceci ..
void CMyApp :: DownloadCompleteL() { { RBuf16 buf; buf.CreateL (iTextBuffer.Length()); buf.Copy (iTextBuffer);
RDebug::Printf("downloaded text %S", buf);
iTextBuffer.SetLength(0);
iTextBuffer.ReAlloc(0);
}
Mais cela provoque toujours un blocage. J'utilise S60 3rd Edition FP2 v1.1
Ceci affiche seulement la première lettre du RBuf16 – adam
Vous avez probablement raison puisque j'ai raté le _L ("") de la chaîne, que Ayaz a repéré. –