-6

我有一个制表符分隔的 txt 文件,如下所示:

Well       Name       Detector      Task    Quantity
1          try1       Cam1          UNKN    0
2          try2       Cam1          UNKN    0
3          try3       Cam3          STND    1000
4          try4       Cam5          UNKN    0
5          try5       Cam6          UNKN    0
6          try6       Cam6          UNKN    0
....
92         try92      Cam4          STND    100

我需要从此 TXT 文件输出一个 CSV 文件。在输出的 CSV 文件中,我需要将分隔符从 Tab 更改为分号,我只需要前两列。

我将文本文件放在一个数组中:

string [] source....

也跳过一些我不需要的标题行,

但现在我被困在如何继续下去。

我知道 StreamReader 和 StreamWriter,但我不知道如何使用它们来完成我的任务。

任何帮助将不胜感激。

谢谢!

4

1 回答 1

-1

希望这能给您带来想法,因此请尝试理解每个部分。

string[] lines = System.IO.File.ReadAllLines(YOUR INPUT FILE);

StringBuilder builder = new StringBuilder();

foreach (string line in lines)
{
    var temp = line.Split('\t');
    builder.AppendLine(string.Join(";", temp[0], temp[1]));
    //builder.AppendLine(string.Format("{0}; {1}", temp[0], temp[1]));
}

System.IO.File.WriteAllText(YOUR OUTPUT FILE, builder.ToString());
  • File.ReadAllLines: 将文件的所有行读入一个string[]
  • File.WriteAllText: 将字符串写入文件。
  • StringBuilder: 这个类表示一个类似字符串的对象。
  • AppendLine:向StringBuilder实例添加字符串行。
  • string.Format:将指定字符串中的每个格式项替换为对应对象值的等效文本。更多的
于 2013-04-23T14:36:43.993 回答