首页 > 解决方案 > 如何将数组中存在的数据拆分为另一个数组。?

问题描述

基本上,我正在尝试拆分一个数组并将其值传递给另一个数组。但是,我做不到。它给出了一个错误:

无法将类型 String[] 隐式转换为字符串”

StreamReader EmployeeFile = new StreamReader(@"C:\Users\user\Desktop\FoodDeliverySystem\Employee_details.txt");
String ReadEmployeeData = EmployeeFile.ReadToEnd();
String[] ReadEmployeeDataByLine = ReadEmployeeData.Split(';');
for (int k = 0; k < 5; k++)
{
     for (int l = 0; l < 5; l++)
     {
          Console.WriteLine("test");
          String[,] ReadEmployeeDataByLineByCategorie = new string[k, l];
          ReadEmployeeDataByLineByCategorie[k,l] = ReadEmployeeDataByLine[l].Split(',');
     }
} 

标签: c#

解决方案


由于您无法确定在每个类别中您将拥有多少这些值,因此您应该使用锯齿状数组

那应该这样做:

var readEmployeeDataByLine = new StreamReader(@"C:\pathToFile.txt").ReadToEnd().Split(';');
var readEmployeeDataByLineByCategorie = new string[readEmployeeDataByLine.Length][];

for (int i = 0; i < readEmployeeDataByLineByCategorie.Length; i++)
    readEmployeeDataByLineByCategorie[i] = readEmployeeDataByLine[i].Split(',');

推荐阅读