我能够读取文本文件中包含的数据。然后对该数据进行编码以显示在数据网格视图中。数据的原始格式以逗号分隔。现在我想使用datagridview的数据来保存它,而不是使用制表符分隔。
问题在于,并非所有字段的长度都相同,所以给我一些类似的东西,
A B C
1 567889 123
应该是,
A B C
1 567889 123
我想要的第二个例子,
ABCDE ABC A
123 1258741 528712
所以无论是标题长度列还是数据长度列。
我将字符串构建器用作sb.Append("{0}\t,{1}\t",field1, field2)
,但它不起作用。还尝试了write.Write(field + "\t")
答案 0 :(得分:0)
如果您希望可视化由TAB
字符分隔的垂直对齐的可变长度数据项,则记事本不是正确的工具。
使用支持弹性制表位的编辑器,例如:http://nickgravgaard.com/elastictabstops/(向下滚动到Java applet演示,这样您就可以尝试使用单个制表位粘贴文本)。
或者将文本粘贴到专门用于处理列的工具中,例如Excel。它会自动将选项卡识别为列分隔符。
答案 1 :(得分:0)
您可以使用String.PadRight
以这种方式设置文本格式。
您只想使用带有标题长度的''填充并添加标签。
示例:
string line = string.Format("{0}\t{1}\t{2}", field1.PadRight(header1.Length, ' ')
, field2.PadRight(header2.Length, ' ')
, field3.PadRight(header3.Length, ' ')));
结果:
ABCDE A ABC
5 356475 5657
566 66 4