簡體   English   中英

在C#中讀取2D字符數組

[英]Reading 2d array of character in C#

我的表格中有一個文本文件。

8
* 0 * * * 0 0 0
0 * 0 * 0 * * *
0 0 * 0 * 0 0 0
0 0 0 0 * 0 0 0
0 * * 0 0 0 * 0
0 0 0 0 * 0 0 *
* 0 * 0 0 0 * 0
0 0 0 0 * 0 0 0

其中8告訴我要讀取的文件中的行和列數,其后是8 * 8的char行和列。 這是讀取8 * 8數組的代碼。 我不知道如何先分別讀取整數8並運行此代碼。

char[][] result = File.ReadAllLines("hotel_in2.txt")
   .Select(l => l.Split(' ').Select(i => char.Parse(i)).ToArray()).ToArray();

請給我一種方法。

您可以使用Skip方法跳過數組的第一個元素:

char[][] result = File.ReadAllLines("hotel_in2.txt").Skip(1)
   .Select(l => l.Split(' ').Select(i => char.Parse(i)).ToArray()).ToArray();

您可以只使用Skip第一行,因為您的代碼似乎不需要它。

char[][] result = File.ReadAllLines("hotel_in2.txt")
   .Skip(1)
   .Select(l => l.Split(' ').Select(i => char.Parse(i)).ToArray())
   .ToArray();

或者,您可以將ReadAllLines分配給變量,然后使用First獲取該值。

var file = File.ReadAllLines("hotel_in2.txt");
int size = int.Parse(file.First());
char[][] result = file
   .Skip(1)
   .Select(l => l.Split(' ').Select(i => char.Parse(i)).ToArray())
   .ToArray();

暫無
暫無

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

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