2011-12-27 85 views
1

我正在閱讀一個CSV文件,其中一列有含有無法識別的符號的文本。讀完文件後,''等符號變成∩┐╜。我也將它保存到數據庫中。Grails:用HTML代替符號

顯然,當我在網頁上顯示它時,它顯示垃圾。我如何用Grails替代HTML代碼(例如´)?

我正在使用csv插件讀取CSV文件。代碼如下:

def f = "clientDocs/testfile.csv" 
def fReader = new File(f).toCsvMapReader([batchSize:50, charset:'UTF-8']) 
fReader.each { batchList -> 
batchList.each { 
    def description = substituteSymbols(it.Description) 


def substituteSymbols(inText) { 
    // HOW TO SUBSTITUTE HERE 
} 

感謝您的任何幫助或建議。我已經嘗試過string.replaceAll(regExp)。

回答

4

Grails帶有一套基本的編碼器/解碼器,用於常見任務。

這裏你想要的是it.Description.encodeAsHTML()

,然後如果你在視圖中顯示時,要原創,只是.decodeHTML()

扭轉它你可以閱讀更多有關這些位置:http://grails.org/doc/latest/guide/single.html#codecs

(編解碼方法名稱錯字按照評論)

+1

grails中解碼HTML編解碼器的實際方法名稱是decodeHTML,而不是decodeAsHTML。 – 2011-12-28 10:14:20