我想做到以下幾點,但我得到這個從類型隱式轉換的char []字符串是不可能
Error: an Implicit conversion from type Char[] to string is not possible.
string Pattern2 = (Convert.ToDateTime(currMail.CreationTime).ToString(" dd-MMM-yyyy HH-mm")).ToArray();
沒有任何人有關於如何處理這個任何想法?
我想做到以下幾點,但我得到這個從類型隱式轉換的char []字符串是不可能
Error: an Implicit conversion from type Char[] to string is not possible.
string Pattern2 = (Convert.ToDateTime(currMail.CreationTime).ToString(" dd-MMM-yyyy HH-mm")).ToArray();
沒有任何人有關於如何處理這個任何想法?
刪除.ToArray()
:
string Pattern2 = Convert.ToDateTime(currMail.CreationTime).ToString("dd-MMM-yyyy HH-mm");
看起來你並不需要使用.ToArray()
方法在所有。您已使用.ToString()
方法分配您的Pattern2
變量。
只是用作;
string Pattern2 = Convert.ToDateTime(currMail.CreationTime).ToString("dd-MMM-yyyy HH-mm");
string Pattern2 = Convert.ToDateTime(currMail.CreationTime).ToString(" dd-MMM-yyyy HH-mm");
分配一個char []爲一個字符串,這需要從一個字符串炭[]轉換。正如錯誤所說,這不是隱含地完成的,即在幕後。這樣做是爲了防止愚蠢的錯誤。
您需要進行顯式轉換(從數組中創建一個字符串,然後賦值)。
在你的情況下,你有一個字符串,並將其轉換爲數組,然後將其分配給Pattern2。只是不要將字符串轉換爲數組。
string Pattern2 = (Convert.ToDateTime(currMail.CreationTime).ToString(" dd-MMM-yyyy HH-mm"));
至於其他的答案指出,你的電話ToArray
不僅是不必要的,它是在這種情況下,主動對人體有害。你已經有了一個字符串,你需要一個字符串,所以不要將字符串轉換爲char數組;只需使用字符串。
但是,爲了您將來的參考,是可能將char數組轉換爲字符串,而不是通過隱式或顯式轉換。對於語法是:
char[] characters = whatever;
string str = new String(characters);
最後,文件是在這裏:
http://msdn.microsoft.com/en-us/library/vstudio/s1wwdcbf.aspx
初學者應熟悉本文件;那裏有很多好東西。
刪除'.ToArray()'調用。它應該做什麼?實際上,你正在調用一個'.ToString()'方法,並且你想分配給一個'string'。我無法想象如何額外的'.ToArray()'看起來「確定」給任何人。 – Jon
嗯,也許到初學者:) 你是什麼意思與「ToString(),你想分配給一個字符串」 我應該使它與大S的字符串? – gbbb
@gbbb:'string'和'System.String'是別名;沒有區別。 –