2017-05-03 58 views
-1

我很难让数据在控制台应用程序的表中显示。我相信这可能与我获得数据显示的方式有关。C#在控制台中创建表的问题

我使用这个阅读的文本文件的内容:

string currentDir = Directory.GetCurrentDirectory(); 
      string[] textFiles = Directory.GetFiles(currentDir, "*.txt"); 
      string[] lines = new string[11]; 
      for (int i = 0; i < textFiles.Length; i++) 
      { 
       lines[i] = File.ReadAllText(textFiles[i]); 
      } 

然后我试图显示文本文件的所有内容到一个表,每个文本文件有600个条目,它们所有人一起去做一张桌子。

Console.WriteLine("{0,10} \t {1,15}", lines[0], lines[1]); 

是我让他们在表格中显示,但只行的最后一个条目[0]和线[1]正在落实在控制台的同一行的第一个条目......任何人有任何的尝试有任何想法吗?

+0

你有什么期待{0,10}办?我只是没有看到这种风格的记谱法,不理解它。我所看到的所有修饰符都以字母开始,并通过{0:C2}进行调用。 – vipersassassin

+1

@vipersassassin:https://msdn.microsoft.com/en-us/library/system.string.format(v=vs.110).aspx#FormatItem –

+1

您需要提供一些示例输入和输出,基本上一个[mcve]。 –

回答

0

您正在以简单的字符串读取文件的全部内容,这就是您将在该字符串中获得的内容 - 文件的内容,包括任何新行,制表符,空格等等。如果你想操作那些文件中的单个字符串,你需要首先根据一些规则拆分这些字符串。

你使用没有做所有的东西本身的格式排列 - 见对准部件在https://msdn.microsoft.com/en-us/library/txafckwd.aspx

+0

好吧,首先我会寻找另一种将我的11个文本文件放入数组中的方法,这使我可以更容易地操作,是我可以打印文件内容的唯一方法我是一名初级C#程序员 –

+0

您选择的方法没有错,它仅取决于您希望接下来发生的事情如果您想要处理每行在文件中分开,那么你需要将这些字符串拆分成行或者直接读取它们(ReadAllLines)。如果你做了这个修改,你最终会得到一个包含数组的数组它变得更加复杂,但是你可以单独使用每条线。如果每行都包含制表符/逗号分隔值,并且您需要依次处理每个行,则可能有更简单的方法来获取数据,例如CSV解析器。像往常一样,这取决于 –