0

テキストファイルに含まれるデータを読み取ることができます。このデータは、datagridview に表示されるようにコーディングされます。データの元の形式はコンマ区切りです。代わりに、datagridview のデータを使用して、タブ区切りを使用して保存したいと考えています。

問題は、すべてのフィールドが同じ長さであるとは限らないため、次のようなものが得られることです。

A B C
1 567889 123

そして、それは次のようになるはずです、

A B      C
1 567889 123

私が欲しいものの2番目の例、

ABCDE ABC     A
123   1258741 528712

したがって、ヘッダーの長さの列またはデータの長さの列は関係ありません。

文字列ビルダーを使用しましたsb.Append("{0}\t,{1}\t",field1, field2)が、機能しません。また試したwrite.Write(field + "\t")

4

2 に答える 2

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
于 2013-01-16T02:16:54.913 に答える
0

TABメモ帳は、文字で区切られた垂直方向に配置された可変長データ項目を視覚化する場合に使用する適切なツールではありません。

http://nickgravgaard.com/elastictabstops/などのエラスティック タブ ストップをサポートするエディタを使用します(Java アプレット デモまでスクロールして、そこに 1 つのタブ ストップでテキストを貼り付けてみてください)。

または、Excel などの列を操作するように設計されたツールにテキストを貼り付けます。タブを列の区切り記号として自動的に認識します。

于 2013-01-16T02:02:01.387 に答える