2012-08-16 27 views
0

我的應用程序從SQLite數據庫讀取讀取數據時顯示奇怪的字符和顯示上的UILabel的文本,但由於某些原因,一個小的「矩形符號」出現如下圖所示的圖片。當我使用的NSLog打印在控制檯中的文本,該文本顯示正常,即,只打印出「家」。 (不矩形符號)的UIButton並從的UILabel sqlite的

enter image description here

這裏是我的代碼:

NSString *text=[[NSString alloc] initWithUTF8String:(const char *)sqlite3_column_text(statement, 1)]; 

NSLog(text); 
myLabel.text=text; 
+0

也許SQL表的編碼不是UTF-8? – 2012-08-16 20:43:23

+0

它可以是,我怎麼可以將它設置UTF-8? – DavidNg 2012-08-16 20:44:33

+0

我只是檢查了我的數據庫設置,它用UTF-8編碼爲 – DavidNg 2012-08-16 20:47:07

回答

0

嘗試:

NSLog ([NSString stringWithFormat:@"%s<--",text]); 
在控制檯輸出

,並在< - 出現在該行在文字下方?如果是這樣,你可能會得到一個CR/LF終止的字符串。

或有可能更加有用,列舉每個字符在您的字符串,並輸出到控制檯爲十六進制值,那麼你至少可以看到這些字符是什麼(如果不是CR/LF)。

+0

你的意思是這個'NSLog([NSString stringWithFormat:@「%s ***」,text]);'?由於Xcode中給出了錯誤與您的代碼 – DavidNg 2012-08-16 20:57:58

+0

衛生署,安卓/ iOS的糟糕。對,就是這樣!對不起編輯我的回答 – CSmith 2012-08-16 20:59:02

+0

我用'@「%@< - 」'代替'@「%s < - 」'。我對麼? – DavidNg 2012-08-16 21:14:05