2011-12-12 10 views
0

對不起,要求其他人已經問過的問題。但是,當我使用已發佈的修補程序,我的程序炸彈程序炸彈當不再使用修復程序

原創的作品,但給人的NSString棄用消息:

textFromFile = [NSString stringWithContentsOfFile:filePath]; 
tempArray=[NSMutableArray arrayWithArray:[textFromFile componentsSeparatedByString: @"||"]]; 

報告的修正:

NSString *textFromFile = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil]; 
tempArray=[NSMutableArray arrayWithArray:[textFromFile componentsSeparatedByString: @"||"]]; 

底部有一個炸彈。我還缺少什麼修補程序?我使用NSString * textFromFile在文件的頂部。我的(初學者的)直覺是,我宣佈它兩次,但如果我不把它放在文件的頂部,我會得到未聲明的變量錯誤信息,我知道我沒有抓住任何東西,任何智慧的話都會被讚賞。)

+1

您能提供崩潰日誌嗎?你記錄了變量textFromFile,以確保它不是零。文件是否存在? – FelixLam

+0

感謝您的提問,FelixLam。炸彈信息是「線程1:程序接收到的信號:」EXC_BAD_ACCESS「,我假設這意味着它沒有找到該文件,但是原始行已經到位,而不是修正,文件被找到並正確讀取。只有「問題」是關於stringWithContentsOfFile的警告被棄用 –

+0

不建議使用並不一定意味着停止工作能否提供崩潰日誌?即崩潰的回溯,它應該告訴你代碼崩潰了哪一行 – FelixLam

回答

0

我發現我的情況有問題。這裏面對遇到同樣問題的其他人。

在讀入字符串textFromFile的文本文件中,我使用了||將要傳送到tempArray的項目分開。

舊的棄用方式奏效。新的,正式的首選方法,與額外的編碼參數,轟炸。

當我將分隔符切換到jj而不是||時,新方法起作用。

我現在沒有關於使用不贊成使用的語法的警告。