StringByAddingPercentEscapesUsingEncoding öğesinden CFURLCreateStringByAddingPercentEscapes uygulamasına geçmek zorunda kaldım çünkü soru işaretlerinden (?) Kaçmıyor. Ben kaçmak yok tam olarak ne meraklıyım ve Bazı iyi kategoriler sadece yapmak için yaratılmıştır 3986.stringByAddingPercentEscapesUsingEncoding escapes karakterleri nelerdir?
cevap
RFC vs kısmi kaçmalarına arkasındaki mantık ne gerek: http://iosdevelopertips.com/networking/a-better-url-encoding-method.html http://www.cocoanetics.com/2009/08/url-encoding/
bırakmak için gerekçe Bazı karakterler dışarıdadır ... fonksiyon tanımının şu olduğu söylenir: Returns a representation of the receiver using a given encoding to determine the percent escapes necessary to convert the receiver into a legal URL string.
Tam olarak doğru olması için + ve & URL'de yasal karakterlerdir, oysa boşluk yoktur. Bu nedenle, yöntem bir boşluktan doğru şekilde kaçacaktır, ancak + ve &'u sağlam bırakır.
Okuma RFC2396 http://www.ietf.org/rfc/rfc2396.txt - tanımlı ve ayrılmamış bir dizi karakter tanımlanmış. Tahminimce, bu karakterlerden hiçbiri stringByAddingPercentEscapesUsingEncoding tarafından kaçtı.
CFStringRef'i kullanırken, dönüştürmelerdeki belleği silmemeye dikkat edin. Latin karakterleri ve diğerleriyle çalışmak için geldim. Tüm URL'mden değil, parametrelerimden kaçmak için kullanıyorum. senin kullanım durumuna bağlı olarak, "escapeChars" umarım bu yardımcı olur
CFStringRef escapeChars = (CFStringRef)@"%;/?¿:@&=$+,[]#!'()*<>¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ \"\n";
NSString *encodedString = (__bridge_transfer NSString *) CFURLCreateStringByAddingPercentEscapes(NULL, (__bridge_retained CFStringRef) url, NULL, escapeChars, kCFStringEncodingUTF8);
karakterleri eklemek veya kaldırmak gerekebilir.
- 1. tüm karakterleri
- 2. Özel karakterleri durdurulamayan normal karakterleri durdurmak için normal başlangıçta değil
- 3. Ruby regex: boşluk karakterleri olmayan sözcük olmayan karakterleri değiştir
- 4. Regex özel karakterleri kaldırın
- 5. JavaScript regex beyaz karakterleri
- 6. Unicode bitişik karakterleri ayırma
- 7. Dize içindeki karakterleri değiştir
- 8. Çince karakterleri Unicode'a dönüştürme
- 9. İstenmeyen tüm karakterleri NSCharacterSet
- 10. regex arasındaki karakterleri bulmak ""
- 11. Satır devam karakterleri JavaScript
- 12. Belirli karakterleri kaldırın NSString
- 13. Regex Sıralı Karakterleri Reddet
- 14. Resimden karakterleri segmentlere ayırma
- 15. Tanımlanmamış karakterleri korurken kodlama
- 16. Alman özel karakterleri ajax
- 17. uint8 tuhaf karakterleri görüntüler
- 18. ESC karakterleri nasıl tanımlanır?
- 19. CoreText eşleme karakterleri
- 20. Ctrl-M karakterleri SFTP
- 21. UITextField Tüm karakterleri gizle
- 22. Sınır değerlerindeki karakterleri göster.
- 23. Java String, karakterleri
- 24. Kaçış Karakterleri İçeren Doctest
- 25. XmlSerializer özel karakterleri kaçar &?
- 26. php tüm karakterleri patlat
- 27. kovandaki karakterleri nasıl değiştirebilirim?
- 28. Tktable içindeki karakterleri gizle
- 29. Laravel'de joker karakterleri silme
- 30. Vimrc işlevindeki hata karakterleri
Şimdi bu belgeyi okumak için birkaç dakikaya ihtiyacım var ... :) –