タブ区切りのファイルがあり、一部の文字列には、ý
で置き換える必要のある文字が含まれています\t
。また、文字列には合計4つのタブが含まれている必要があり、余分なタブは最後に追加されます。たとえば、文字列:
1234ý5678
1234
ý1234ý5678
次のようになります
1234\t5678\t\t\t
1234\t\t\t\t
\t1234\t5678\t\t
これが私がこれまでに持っているものです:
string[] input_file = (string[])(e.Data.GetData(DataFormats.FileDrop));
string output_file = @"c:\filename.txt";
foreach (string file in input_file)
{
string[] lines = File.ReadAllLines(file);
for (int i = 0; i < lines.Length; i++)
{
string line = lines[i];
string[] values = line.Split('\t');
//look at each value in values, replace any ý with a tab, and add
//tabs at the end of the value so there are 4 total
lines[i] = String.Join("\t", values);
}
File.WriteAllLines(output_file, lines);
}
編集:いくつかの説明-行全体は次のようになります:
331766*ALL1 16ý7 14561ý8038 14560ý8037 ausername 11:54:05 12 Nov 2007
行を構成する各文字列を確認し、任意のýを\ tに置き換え、最後に\ tを追加して、各文字列の合計が4になるようにする必要があります。結果は次のようになります。
331766*ALL1 16\t7\t\t\t 14561\t8038\t\t\t 14560\t8037\t\t\t ausername 11:54:05 12 Nov 2007