Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我想从文本文件中读取一个表,并将每一列分配给一个数组_C# - Fatal编程技术网

C# 我想从文本文件中读取一个表,并将每一列分配给一个数组

C# 我想从文本文件中读取一个表,并将每一列分配给一个数组,c#,C#,我想将每一行存储在不同的数组中。下面是我试过的代码。 但它不起作用,它只分割最后一行并将值存储在“valueperline”数组中 前11行是源文本。控制台的文件和屏幕截图 using System; using System.Collections.Generic; using System.IO; namespace BBS_optimize { class Program { static void Main() {

我想将每一行存储在不同的数组中。下面是我试过的代码。 但它不起作用,它只分割最后一行并将值存储在“valueperline”数组中

前11行是源文本。控制台的文件和屏幕截图

using System;
using System.Collections.Generic;
using System.IO;
namespace BBS_optimize
{ 

    class Program
    {
        static void Main()
        {
            int i = 0; int j = 0; int k =0; string[] valueperline = new string[0]; string[] lines = new string [0];
           lines = File.ReadAllLines("Table1.txt");
            for (i = 0; i < lines.Length; i++)
            {
                Console.WriteLine(lines[i]);
            }
            for (j = 0; j<lines.Length; j++)
            { valueperline = lines[j].Split('\t');

            }
            for (k = 0; k < 44; k++)
            { Console.WriteLine(valueperline[k]); 
            }

        }
    }
}
使用系统;
使用System.Collections.Generic;
使用System.IO;
名称空间BBS_优化
{ 
班级计划
{
静态void Main()
{
int i=0;int j=0;int k=0;string[]valueperline=新字符串[0];string[]行=新字符串[0];
lines=File.ReadAllLines(“Table1.txt”);
对于(i=0;i
string[,] ParseFromFile (string fileName)
{
    // Assume that your table have 10 cols and 100 rows
    string[,] result = new string[10,100];
    string str = File.ReadAllText (fileName);
    // Split each line to arrays
    string[] yourStringArray = str.Split(new[]{'\r', '\n'},StringSplitOptions.RemoveEmptyEntries);
    for (int i == 0; i < yourStringArray; i++)
    {
        string[] row = yourStringArray[i].Split(new[]{" "},StringSplitOptions.RemoveEmptyEntries);
        result[i] = row;
    }
    return result;
}
string[,]ParseFromFile(字符串文件名)
{
//假设您的表有10列和100行
字符串[,]结果=新字符串[10100];
string str=File.ReadAllText(文件名);
//将每行拆分为数组
string[]yourStringArray=str.Split(新[]{'\r','\n'},StringSplitOptions.RemoveEmptyEntries);
对于(int i==0;i
使用列表:

List<List<string>> ParseFromFile (string fileName)
{
    // Your list
    List<List<string>> result = new List<List<string>>();
    string str = File.ReadAllText (fileName);
    // Split each line to arrays
    string[] yourStringArray = str.Split(new[]{'\r', '\n'},StringSplitOptions.RemoveEmptyEntries);
    for (int i == 0; i < yourStringArray; i++)
    {
        List<string> row = yourStringArray[i].Split(new[]{" "},StringSplitOptions.RemoveEmptyEntries).ToList();
        result.Add(row);
    }
    return result;
}
List ParseFromFile(字符串文件名)
{
//你的名单
列表结果=新列表();
string str=File.ReadAllText(文件名);
//将每行拆分为数组
string[]yourStringArray=str.Split(新[]{'\r','\n'},StringSplitOptions.RemoveEmptyEntries);
对于(int i==0;i
下面是一个解决方案:

static void Main(string[] args)
    {
        List<List<string>> lst = new List<List<string>>();
        string[] lines = new string[0];
        lines = File.ReadAllLines("tableX.txt");
        for (int i = 0; i < lines.Length; i++)
        {
            Console.WriteLine(lines[i]);
        }
        for (int j = 0; j < lines.Length; j++)
        {
            var line = lines[j].Split(' ').ToList();
            lst.Add(line);
        }
        foreach (var item in lst)
        {
            for (int k = 0; k < item.Count; k++)
            {
                Console.WriteLine(item[k]);
            }
        }
    }
static void Main(字符串[]args)
{
List lst=新列表();
字符串[]行=新字符串[0];
lines=File.ReadAllLines(“tableX.txt”);
对于(int i=0;i
它会分割所有行,只是您正在覆盖相同的变量(
valueperline
)每一次迭代,当代码完成时,它将只具有最后一行的值。有意义吗?这将是一个很好的时间,让您学习使用调试器逐步完成代码,在这里您可以确切地看到它做了什么,什么是(和不是)正在执行,并跟踪程序运行时的实际逻辑和流程。@Crowcoder这就是问题所在,非常感谢。