作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
抱歉没有提前说清楚,这对我来说有点难以描述。现在我在数据管理方面遇到了一些问题。我在数据库中有一个用于图形数据的字符串。
f0||Title Text||f1||Subtitle Text||f2||Option 1||f3||Option 2
现在,我可以使用这个“||”查询数据并将上面显示的字符串拆分为一维数组分隔器。截至目前,代码如下。
MySQLHandler handler = new MySQLHandler(this.text_DataIP.Text.ToString());
List<string>[] data = handler.SelectCG("graphics", text_CGBuffer.Text.ToString());
string x = data[2][0].ToString();
string[] y = x.Split(new string[] { "||" }, StringSplitOptions.None);
// For each string in the new string array, lets separate them into their own strings for adding to the DataSet
for (int n = 0; n < y.Length; )
DataSet dataset = new DataSet();
DataTable table = dataset.Tables.Add();
table.Columns.Add("fieldid");
table.Columns.Add("values");
缺少的是对于数组中的每个其他字符串,它将交替将数据添加到 DataTable 的代码。例如,“f0、f1、f2、f3”将进入“fieldid”列,其他字符串将进入值列。
我正在考虑做一个 for 循环,但我不知道这是否是最有效的方法。什么会更有效?我将如何实现这一目标?
最佳答案
这是我测试过的一个例子。我认为这对你有用:
string x = "f0||Title Text||f1||Subtitle Text||f2||Option 1||f3||Option 2";
string[] y = x.Split(new string[] { "||" }, StringSplitOptions.None);
DataSet ds = new DataSet();
DataTable dt = ds.Tables.Add();
List<object> rowvalues = new List<object>(); //to hold the row values
//Loop through 2 at a time,
for (int n = 0; n < y.Length; n = n + 2)
{
dt.Columns.Add(y[n]); //add the column
rowvalues.Add(y[n + 1]); //and save the value
}
//Create the row
var dr = dt.NewRow();
//Set the row values
dr.ItemArray = rowvalues.ToArray();
关于c# - 将一维数组拆分为 2 个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37770229/
我是一名优秀的程序员,十分优秀!