簡體   English   中英

如何將ac#逗號分隔值字符串轉換為列表?

[英]How to convert a c# comma separated values string into a list?

我正在使用C#ASP.NET 4和SQL Server 2008 R2

我從sql server得到一個對象標量,它是一個字符串,其中包含以下形式的逗號分隔值:

7, 12, ... 1, 65

我想將此對象轉換為列表嗎?

我想到了方向:

List<int> myList = new List<int>(new int[] (List)mySqlClass.mySqlQueryReturningAnObject("SELECT CLAUSE");

但這是行不通的。

如何將此對象轉換為列表?


完整答案:

此答案正在使用中(根據更新之前的答案)

List<int> myList = new List<int>(mySqlClass.mySqlQueryReturningAnObject("SELECT CLAUSE").ToString().Split(',').Select(x => Convert.ToInt32(x)).ToList());

var intValues = line.Split(',').Select(x => Convert.ToInt32(x)).ToList();

更新資料

為了確保您的代碼能夠處理1,2,3,,,4,5,6類的字符串,您可以使用String.Split方法的重載

var intValues = line.Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries)
                    .Select(x => Convert.ToInt32(x))
                    .ToList();

在字符串上使用.Split()方法。 它將返回一個字符串數組。

string yourResult = "1,2,3,4,5";
string[] resultsArray = yourResult.Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries);

您嘗試過String.Split嗎?

您可以使用這樣的簡單行來分割字符串:

var myString="1,2,4,5,6";
var numberList=myString.Split(',');

您可以使用簡單的Array.ConvertAll指令,如下所示:

string str = "1,2,3,4,5,7,8,9";
int[]resultInArray = Array.ConvertAll( str.Split(','), item => int.Parse(item));
        private void TestParse()
        {
            string commaseparatedstring = "3, 5,6,19";

            int parsedvalue = 0;

            List<int> valuesint =
                commaseparatedstring.Split(',').Select(elem => int.TryParse(elem, out parsedvalue) ? parsedvalue : 0).ToList(); 

        }

您可以嘗試將結果分配給變量。

然后將其轉換為字符串(如果尚未轉換為字符串)

然后在逗號上進行字符串拆分,並將結果分配給列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM