识别txt文件特征

时间:2013-05-15 14:40:44

标签: .net vb.net

我正在尝试开发一个软件,用户将打开一个填充数据的txt文件 我想读取数据,但我不知道txt文件是分隔符还是固定字段,如果是分隔字段分隔符(,或;或/ etc)或行分隔符(CR + LF或CR或CF)等)。
如果我知道所有这些,我知道如何读取文件,但我能以自动方式找出这些特征吗? 感谢

2 个答案:

答案 0 :(得分:1)

你可以做出很好的猜测:看看file的灵感。

例如:

  1. 读取一大块数据(选择一些大到足以包含整行的大小)
  2. 扫描CR,LF,可能是分隔字符和空格
  3. 它有CR + LF吗?他们总是在一起吗?
  4. 你找到了任何分隔符吗?如果你发现了多个,你能看到任何模式吗?
  5. 你是否发现空格的运行总是在连续的行上的同一列结束?
  6. 等。等

答案 1 :(得分:0)

您可以阅读该文件并进行一些有根据的猜测。

是否有CR / LF?

如果没有,它很可能是固定长度,谁会指定另一个行分隔符。

如果是这样,请阅读所有行并分别计算所有字符的数量。

每行显示的字符数是否相同? 如果是这样,它可能是字段分隔符。 如果没有,它可能是固定长度的字段。

如果是固定长度字段,请使用统计信息构建一行。对于每个角色,所有线路上的空白百分比以及所有线路上的非空白百分比是多少?找到索引从非常高的空白百分比跳到非常低的空白百分比的点,这可能是一个字段边界(最后一个字段以空白结尾,因为它不是“满”,下一个以非空白,因为它已经填满。)