Perché la decodifica url non riceve un errore quando decodifica% 22. Questa è una doppia citazione. Quando un programmatore inserisce sinteticamente una virgoletta doppia in una stringa, deve utilizzare due virgolette doppie "" per rappresentare una virgoletta doppia.Qual è la logica dietro il decodificatore url quando si utilizzano le virgolette doppie?
Per esempio
string myString = "It\"s nice to meet you";
console.write(myString);
uscita
It "s piacere di conoscerti
Ma quando url decodifica un virgolette perché essa si rompe. Dopo che la stringa viene fatta passare attraverso il decodificatore url c'è solo una virgola ". Perché questo non infrange il codice?
Per esempio
string myString = "It%22s nice to meet you";
myString = HttpUtility.UrlDecode(myString);
console.Write(myString);
uscita
It "s piacere di conoscerti
Le stringhe sono sicuramente in grado di gestire "È bello conoscerti." Il requisito per evitare le virgolette è * solo * quando il testo è codificato nel codice. Esiste perché dice al compilatore se stai terminando * la stringa *, o * in realtà volendo scrivere una citazione *. – Rob