NSLog wyświetla znaki Unicode jako śmieci podczas debugowania na iPhonie
EDYTOWAĆ: Wyjście NSLog działa dobrze w symulatorze, ale nie działa po podłączeniu do rzeczywistego urządzenia. I wydaje się, że to błąd -http://openradar.appspot.com/11148883. Zdarza się również, że jest on powiązany z LLDB, przełączenie Xcode na GDB rozwiązuje problem. Albo jest to możliwe w AppCode JetBrain, który działa dobrze z LLDB.
Mam w aplikacji kilka ciągów znaków Unicode i jeśli spróbuję wyprowadzić dowolny z tych ciągów używając czegoś takiegoNSLog (@ „% @”, aString) wtedy wszystkie znaki ASCII w ciągu zostaną wydrukowane dobrze, ale wszystkie litery cyrylicy będą pomieszane, więc zamiast
<code>newLocation: coordinate:60.019584,30.284954 'Удельная' </code>
Otrzymuję:
<code>newLocation: coordinate:60.019584,30.284954 '–ü–æ–∫–ª–æ–Ω–Ω–æ–≥–æ—Ä—Å–∫–∞—è' </code>
I to jest dość trudne do wykonania jakiegokolwiek debugowania z tego rodzaju wyjściem. A ponieważ ta aplikacja jest przeznaczona wyłącznie na rynek rosyjski, nie mogę po prostu zmienić lokalizacji i używać angielskich łańcuchów.
Zastanawiam się, czy istnieje sposób, aby NSLog działał dobrze ze znakami Unicode? I szukam tylko jakiegoś rodzajurozwiązanie z jedną linią, Wiem, że jest kilka sposobów na napisanie pół strony kodu i wyprowadzenie znaków Unicode, ale szukam czegoś krótszego. Idealnie szukam jakiejś metody NSString, która sprawi, że wszystko będzie działać. na przykład
<code>NSLog(@"%@", [aString someThingThatMakesUnicodeWorkWithXcodeConsole]); </code>