Domanda

Help me please. Ho problemi con la codifica di stringa di risposta dopo la richiesta GET:

var m_refWebClient = new WebClient();
var m_refStream = m_refWebClient.OpenRead(this.m_refUri);
var m_refStreamReader = new StreamReader(this.m_refStream, Encoding.UTF8);
var m_refResponse = m_refStreamReader.ReadToEnd();

Dopo aver chiamato questo codice mia stringa m_refResponse è sorgente JSON con stringhe come \u041c\u043e\u0439 . Che cos'è? Come codificare per cirillico? Sono molto stanco dopo un sacco di tentativi.

corretto

È stato utile?

Soluzione

mi manca qualcosa qui?

  

Di cosa si tratta?

"\u041c\u043e\u0439" è la rappresentazione letterale String of Мой. Non devi fare altro, le stringhe sono Unicode, hai la tua cirillico già.

(A meno che non si letteralmente avere la \u041c\u043e\u0439 sequenza, cioè. Il valore "\\u041c\\u043e\\u0439" dire. Non sarebbe il risultato di un errore di codifica, che sarebbe qualcosa che accade a livello di server, ad esempio si restituendo una stringa JSON, dal momento che JSON e C # utilizzano le stesse fughe \u. Se questo è ciò che sta accadendo uso un parser JSON.)

Altri suggerimenti

Io non sono al 100% su questo, ma vorrei assumere che avrei dovuto passare Encoding.Unicode a StreamReader.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top