Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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#_Arrays_File - Fatal编程技术网

C# 将文件逐行拆分为数组

C# 将文件逐行拆分为数组,c#,arrays,file,C#,Arrays,File,我希望基于文件中的行创建一个数组,但目前它是一个固定大小的数组: string[] converList = new string[6]; // Array containing TXT lines 正在读取文件: void ReadConver() { string line; int i = 0; System.IO.StreamReader file = new System.IO.StreamReader

我希望基于文件中的行创建一个数组,但目前它是一个固定大小的数组:

string[] converList = new string[6]; // Array containing TXT lines
正在读取文件:

void ReadConver()
    {
        string line;
        int i = 0;

        System.IO.StreamReader file =
            new System.IO.StreamReader("C:\\Users\\Kennyist\\Documents\\Visual Studio 2010\\Projects\\soft140as3\\convert.txt");
        while ((line = file.ReadLine()) != null)
        {
            converList[i] = line;
            i++;
        }
    }

如何执行此操作?

您可以创建一个列表,然后使用ToArray将其设置为一个数组:

var cList = File.ReadAllLines("C:\\Users\\Kennyist\\Documents\\Visual Studio 2010\\Projects\\soft140as3\\convert.txt").ToList();
string[] converlist = clist.ToArray();

另外,使用
(@'C:\Kennyist…)
而不是双反斜杠

您可以创建一个列表,然后使用ToArray使其成为一个数组:

var cList = File.ReadAllLines("C:\\Users\\Kennyist\\Documents\\Visual Studio 2010\\Projects\\soft140as3\\convert.txt").ToList();
string[] converlist = clist.ToArray();
另外,使用
(@'C:\kenyist…)
而不是双反斜杠编辑的答案:

  string[] converList;
  System.IO.StreamReader file =
  new System.IO.StreamReader("C:\\Users\\Kennyist\\Documents\\Visual Studio 2010\\Projects\\soft140as3\\convert.txt");


  converList = new string[] { file.ReadToEnd() };
谢谢@Cole

编辑答案:

  string[] converList;
  System.IO.StreamReader file =
  new System.IO.StreamReader("C:\\Users\\Kennyist\\Documents\\Visual Studio 2010\\Projects\\soft140as3\\convert.txt");


  converList = new string[] { file.ReadToEnd() };

谢谢@Cole

不要用艰难的方式做事,你可以使用:

var arrTextLines = File.ReadAllLines(@"C:\Users\Kennyist\Documents\Visual Studio 2010\Projects\soft140as3\convert.txt");

arrTextLines
将是一个类型为
string[]

的对象,您可以使用:

var arrTextLines = File.ReadAllLines(@"C:\Users\Kennyist\Documents\Visual Studio 2010\Projects\soft140as3\convert.txt");

arrTextLines
将是一个类型为
string[]

的对象。这太简单了,在谷歌上找到了类似的东西,但我之前遇到了一个错误。谢谢
ReadAllLines
的结果已经是一个数组。不需要在上面使用LINQ
ToArray
扩展方法。这太简单了,在google上发现了类似的东西,但我以前发现了一个错误。谢谢
ReadAllLines
的结果已经是一个数组。无需对其使用LINQ
ToArray
扩展方法。这到底是如何回答OP的问题的?他想将文件读入数组。这只会创建一个长度为
0的空数组。您不理解.NET,是吗
new T[]
创建一个大小为0的数组。@噢,我错了,我现在明白了,对不起,我不熟悉泛型函数,我使用的是List而不是array,如果它是
string[]converList,它可能会起作用我将编辑我的答案@ColeJohnson我现在得到数组是什么:D谢谢:)如果你只使用
string[]converList
,您刚刚做了与
string[]converList=null
等效的操作。这到底是如何回答OP的问题的?他想将文件读入数组。这只会创建一个长度为
0的空数组。您不理解.NET,是吗
new T[]
创建一个大小为0的数组。@噢,我错了,我现在明白了,对不起,我不熟悉泛型函数,我使用的是List而不是array,如果它是
string[]converList,它可能会起作用我将编辑我的答案@ColeJohnson我现在得到数组是什么:D谢谢:)如果你只使用
string[]converList
,您刚刚执行了与字符串[]converList=null等效的操作。