2011-04-04 51 views
0

我有一個字符串C#斯普利特給出了一個錯誤

String[] theStringArray ={"A,B,C,D,E,F,G", 
       "H,I,J,K,L,M,N"}; 

數組我有一個空字符串數組我想它的內容設置爲0指數以上陣列的內容。

String[] theNewArray; 

theNewArray = theStringArray[0].Split(","); 

這給出了一個錯誤。我做錯了什麼?

回答

5

使用簡單的報價

String[] theNewArray; 

theNewArray = theStringArray[0].Split(','); 
+0

哇這麼簡單oversight.Thanks – james 2011-04-04 04:12:39

+2

這應該被標記爲正確的... – tjameson 2011-04-04 04:13:28

+0

別緊張tjameson。在我問這個問題15分鐘後,它只是讓我把它標記爲正確的。它被標記爲正確:) – james 2011-04-07 19:17:31

1

String不能隱式轉換爲char[],這就是Split所期望的。

​​

如果你需要一個以上的字符分割,您可以使用

theNewArray = theStringArray[0].Split(",.;:".ToCharArray()); 

在未來,它是有幫助的告訴你在說什麼錯誤訊息。 :)

1

Split()方法需要一個字符,而不是一個字符串。你的代碼更改爲這個(注意單引號):

theNewArray = theStringArray[0].Split(','); 
1

你得到的錯誤是:

爲「最好的重載方法匹配string.Split(params char [])'有一些無效參數

這是因爲喲我將Split方法傳遞給一個字符串(雙引號)而不是一個字符(單引號)。

試試這個:

​​
0

嗨,老兄使用theString.split( 「」);

這樣

http://www.dotnetperls.com/string-split 
0

您必須使用單引號來指定你的意思是一個char [],而不是一個字符串,即使該字符串是一個字符長。

還值得注意的是,Join需要雙引號。非常不直觀,你不覺得?!

var joinString = string.Join("|", join); 
var string[] split = joinString.Split('|');