最近,我在應用程序中添加了一個函數,該函數從下載的文件中讀取日期,並查找當前日期與文件日期之間的差異。完成後,它會顯示在我的一個論壇的標籤中。即使進行了視覺檢查,字符串比較也失敗
存在一個例外:如果文件中的字符串等於「Lifetime」,則不應將其作爲日期處理並遵循備用邏輯。但是,當我嘗試檢查字符串是否爲「Lifetime」時,即使字符串=「Lifetime」,它也不會返回true。
編輯:我在Nisarg的幫助下修復了FormatException。現在,我的標籤並沒有改變。這就是問題。
編輯2:我覺得很蠢。我發現我在一個函數中啓動了Main兩次,然後使用main1在表單和main之間切換以設置標籤。 這就是標籤工作不正常的原因。感謝Nisarg和所有其他貢獻者。
代碼示例:
string subScript = File.ReadAllText(Path.GetTempPath() + txtUsername.Text + ".txt");
Main main = new Main();
double dSubLeft;
main.dateLabel.Text = subScript;
if (subScript == "Lifetime") // it bypasses this, apparently blank
{
main.daysLeftLabel.Text = "Expires: Never";
}
if (subScript != "Lifetime") //Goes here and throws error saying subScript is not valid DateTime
{
dSubLeft = Math.Round(Convert.ToDouble(Convert.ToString(((Convert.ToDateTime(subScript)) - DateTime.Now).TotalDays)));
string sSubLeft = Convert.ToString(dSubLeft);
main.daysLeftLabel.Text = "Expires: " + sSubLeft + " Days";
}
這是否行**串標= File.ReadAllText(Path.GetTempPath()+ txtUsername.Text +」。txt「); **在變量中填充字符串數據 –
'Convert.ToDateTime()'需要一個看起來像日期的字符串(如7/14/2017」)。您正在發送無法轉換的字符串「Lifetime」。 – Kevin
@凱文是的,但我檢查,以確保它不等於終身。不應該阻止它? – elite