2012-02-21 101 views
1

我試圖從文本文件中讀取一些信息並將其放入字符串[] 我從文件中成功讀取,但是當我嘗試將信息放在String []中時,出現此錯誤:「未將對象引用設置爲對象的實例」。這是我得到的錯誤代碼:當我嘗試實例化沒有設置爲對象實例的String []對象引用時發生錯誤

string total = linie.Replace(idCont + "_" + rows["JOB"].ToString() + "_" + Loturi[i] + " : ", "") 
Vol_Plicuri[i] = total.Split('|')[0].Trim(); 

我不知道如何繞過這個錯誤。 謝謝!

+0

'rows [「JOB」]'可能爲空。 – ken2k 2012-02-21 15:29:18

+0

這裏確實沒有足夠的代碼來幫助你... linie和Vol_Plicuri如何得到聲明? linie在哪裏獲得它的價值? – 2012-02-21 15:29:39

+0

首先將各部分拆分成不同的行,並確定哪一部分正在做你期望的(可能只是某些時間)。 [edit]我懷疑@ ken2k是對的。 – kenny 2012-02-21 15:29:57

回答

1

I put a mbox befor the "Vol_Plicuri[i] = total.Split('|')[0].Trim();" and was not null.

確保Vol_Plicuri設置爲非空值。

+0

我把一個mbox befor「Vol_Plicuri [i] = total.Split('|')[0] .Trim();」並不是空的。 – XandrUu 2012-02-21 15:29:18

+0

還有更多的地方可以生成'NPE'。 – 2012-02-21 15:29:45

+0

有很多原因可能會使這個錯誤發生,linie可能爲空或者總沒有「|」字符 – 2012-02-21 15:31:01

0

檢查調試器中的每個變量以查看哪個爲空。如果你覺得這很難,把複雜的行分解成多個簡單的代碼行可以使它更容易。 (你的堆棧跟蹤會給你一行錯誤信息,所以如果你每行執行少一些,那麼猜測失敗的次數就會減少)。如果某些值實際上可能合法爲空,那麼你可能需要添加'if not null'包裝器這樣的陳述。

相關問題