-2

我有一个文本文件,其中包含表格形式的一些信息,在特定列中有一些重要数据。我需要读取文本文件并根据列中的值将文件拆分为多个文件。
例子:

ID   Course  Name  
001  EEE     Harsha  
002  CSE     Madhuri 
003  EIE     Jagan   
004  EEE     Chandu 
005  CSE     Sukanya    
006  EIE     Sarat   

在此基于课程列的示例中,我可以将数据拆分为 3 个文件。我必须开发一种类似的应用程序。请提供有关如何解决该解决方案的想法。提前致谢。

4

2 回答 2

2
StreamReader fileI = new StreamReader("C:\\Users\\Harsha\\Desktop\\SampleInput.txt");
        StreamWriter fileA = new StreamWriter("C:\\Users\\Harsha\\Desktop\\A.txt", true);
        StreamWriter fileB = new StreamWriter("C:\\Users\\Harsha\\Desktop\\B.txt", true);
        StreamWriter fileC = new StreamWriter("C:\\Users\\Harsha\\Desktop\\C.txt", true);


        string line;
        int counter = System.IO.File.ReadAllLines("C:\\Users\\Harsha\\Desktop\\SampleInput.txt").Length;

        for (int linenum = 0; linenum <= counter; linenum++)
        {
            if ((line = fileI.ReadLine()) != null)
            {
                string c1 = (line.ElementAt<char>(6)).ToString();
                string c2 = (line.ElementAt<char>(7)).ToString();
                string c3 = (line.ElementAt<char>(8)).ToString();
                string c4 = c1 + c2 + c3;

                if (c4 == "CSE")
                {

                        fileA.WriteLine(line);
                }
                else if(c4=="EEE")
                {
                        fileB.WriteLine(line);
                }
                else if(c4=="EIE")
                {
                    fileC.WriteLine(line);
                }

            }
        }


        fileI.Close();
        fileA.Close();
        fileB.Close();
        fileC.Close();
于 2013-11-14T05:30:35.023 回答
0

您的问题基本上可以分三个部分解决:

  1. 读取文本文件。暗示:

    System.IO.StreamReader 文件 = new System.IO.StreamReader("c:\test.txt"); while((line = file.ReadLine()) != null) { .. 神奇的东西 }

  2. 使用 string.split() 分割行

  3. 使用 StreamWriter 写入文本文件

这个答案应该包含足够多的“流行语”来解决您的问题。不要指望这里有一个完整的解决方案。如果您卡在其中一个步骤上。发布您的代码,我们很乐意提供帮助。

于 2013-11-13T17:29:31.840 回答