C#读取包含由选项卡分隔的数据的文本文件

时间:2009-06-22 16:36:34

标签: c# text-files tabs

我有一些代码:

 public static void ReadTextFile()
    {
        string line;

        // Read the file and display it line by line.
        using (StreamReader file = new StreamReader(@"C:\Documents and Settings\Administrator\Desktop\snpprivatesellerlist.txt"))
        {
            while ((line = file.ReadLine()) != null)
            {

                char[] delimiters = new char[] { '\t' };
                string[] parts = line.Split(delimiters, StringSplitOptions.RemoveEmptyEntries);
                for (int i = 0; i < parts.Length; i++)
                {

                     Console.WriteLine(parts[i]);
                     sepList.Add(parts[i]);

                }

            }

            file.Close();
        }
        // Suspend the screen.
        Console.ReadLine();     
    }

它读入一个文本文件,其中包含由制表符分隔的数据,并将数据拆分为单独的单词。

我遇到的问题是,一旦数据被分离,它在列表中的随机字符串的左侧和右侧仍然有大量的空白区域(其中大多数都是这样)。我无法修剪字符串,因为它只删除了空白区域,从技术上讲,这不是空格。

任何人都对如何解决这个问题有任何想法!?

2 个答案:

答案 0 :(得分:11)

  

我遇到的问题是,一旦数据被分离,它在列表中的随机字符串的左侧和右侧仍然有大量的空白区域(其中大多数都是这样)。我无法修剪字符串,因为它只删除了空白区域,从技术上讲,这不是空格。

听起来你的字符串中有非制表符空白字符,以及制表符分隔符。

使用String.Trim应该可以正常删除这些额外的字符。如果由于某种原因,对每个单词执行String.Trim不起作用,则需要切换以查找包含的额外“字符”,并使用此overload of String.Trim

答案 1 :(得分:2)

你有像这样的空格/标签吗? “你好”?

修剪删除空格和制表符