2016-11-16 86 views
-3

我還挺停留在那一刻,我有一個數字,我動態地從數據庫中獲取他們的字符串,數字的範圍可以是1暢想,像這樣1:如何通過分割字符串來創建字符串數組?

string str = "10000,68866225,77885525,3,787"; 

我需要從它創建一個數組,我已經試過這樣:

string[] strArr = { str.Replace(",", "").Split(',') }; 

但它不工作的任何人有任何解決方案,我是所有我們的。基本上它需要是這樣的:

string[] strArr = { "10000","68866225","77885525","3","787" }; 
+4

'var strArr =「10000,68866225,77885525,3,787」.Split(',');' – Phylogenesis

+1

您是第一次刪除逗號,然後嘗試拆分它? –

+0

這個問題顯示沒有任何形式的研究努力,我會建議研究一下MSDN的C#字符串操作,以獲得有關編程的想法。 – diynevala

回答

1

您參加:

string[] strArr = { str.Replace(",", "").Split(',') }; 

代碼不起作用,因爲兩個錯誤:

1)你移除所有,,被拆分之前:

str.Replace(",", "") 

所以基本上你試圖分割這個字符串:"1000068866225778855253787"在每個,,這將導致一個數組連續因爲顯然沒有,分裂,因此只有"1000068866225778855253787"

2)您試圖將數組分配給一個字符串,因爲Split()方法已經返回一個數組,你正試圖把這個數組的string[]場(因爲在你分配的{ })和場string[]是字符串類型,不是數組。


爲了讓您期望的輸出,你必須做.Split(',')原始的字符串,其中包括在其上分裂的所有,。所以,只是刪除通話Replace(),你會得到你想要的輸出:

var str = "10000,68866225,77885525,3,787"; 
var strArr = str.Split(','); 
0

嘗試這種情況:

string[] strArr = str.Split(','); 
+0

嘿謝謝你的回答,我想知道如果我有一個號碼回來?像這樣 - string str =「1」;它是否也返回一個數組? – SmackDat

+1

@SmackDat是的,你將有一個數組只有一個元素是''1'' – meJustAndrew

0

split方法已經返回一個數組。把它從花括號裏拿出來。

string[] strArr = str.Split(','); 

編輯:對不起忘記取出.replace()

0

方法string.Split()已經返回一個數組。

0
string[] strArr =yourstring.Split(','); 

這將返回可能的分裂次數的陣列,例如 「10000,68866225,77885525,3,787」將給陣列大小爲4.