2016-01-21 178 views
7

我目前正在爲Android設計一款移動應用程序。文本和內容使用泰米爾語的當地印度語。對於歡迎詞,相當於泰米爾語的翻譯是:வணக்கம்。由於Android無法顯示印度語文本,因此我使用名爲JavaScript String Escape的服務將其轉換。如何將印度語字符轉換爲Unicode轉義字符

所以這部作品在這樣:

  • 輸入:வணக்கம்
  • 輸出:\u0BB5\u0BA3\u0B95\u0BCD\u0B95\u0BAE\u0BCD

我怎樣才能讓這個使用JavaScript或PHP的,因爲我有巨大的負荷的文本進行轉換並將其轉換爲JSON。樣品JSON:

{ 
    "title": "\u0BAE\u0BB0\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0BB5\u0BB0\u0BBF\u0BA9\u0BCD \u0BAA\u0BC6\u0BAF\u0BB0\u0BCD #1", 
    "image": "http://www.exceptnothing.com/doctors/doc11.png", 
    "rating": "\u2713 \u0B87\u0BAA\u0BCD\u0BAA\u0BC7\u0BBE\u0BA4\u0BC1 \u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BB2\u0BBE\u0BAE\u0BCD", 
    "rating2": "", 
    "releaseYear": "\u0BA8\u0BBE\u0BB3\u0BCD \u0BAE\u0BC1\u0BB4\u0BC1\u0BB5\u0BA4\u0BC1\u0BAE\u0BCD \u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BB2\u0BBE\u0BAE\u0BCD", 
    "genre": ["\u25B6 \u0B87\u0BA4\u0BAF \u0BA8\u0BBF\u0BAA\u0BC1\u0BA3\u0BB0\u0BCD"] 
} 

我也想知道如何解碼上述JSON並顯示爲வணக்கம்。提前致謝。

+0

看起來你需要'escape()'。 –

+0

@PraveenKumar這是簡單的嗎? –

回答

4

你正在尋找的是在PHP中的escape()和在PHP中的json_encode()。打開您的控制檯,然後輸入以下內容:

escape("வணக்கம்") 

,你會得到如下回:

"%u0BB5%u0BA3%u0B95%u0BCD%u0B95%u0BAE%u0BCD" 

所以第一個就解決了。要返回從上面的一個原வணக்கம்,使用unescape()

unescape("%u0BB5%u0BA3%u0B95%u0BCD%u0B95%u0BAE%u0BCD"); 

注:有一點要注意的是,無論是escape()unescape()已被棄用。所以,你需要使用encodeURIComponentdecodeURIComponent

預覽

更新服務器端

編碼和解碼成JSON,它是你最好使用PHP的內置函數。同樣的escape()也可以用在PHP中作爲json_encode(),它們都給出了相同的結果。

json_encode("வணக்கம்"); 
=> "%u0BB5%u0BA3%u0B95%u0BCD%u0B95%u0BAE%u0BCD" 

另請參閱JavaScript: Escaping Special Characters瞭解更多信息。希望這可以幫助。 :)

+0

這就是爲什麼你可以使用en/decodeURIComponent這是不廢棄的 – mplungjan

+0

@PraveenKumar關於服務器端的東西呢? –

相關問題