C#实现文本文件合并

    xiaoxiao2025-07-08  6

    C#实现文本文件合并

    读取n个文本文件,把文件内容合并到一个文本文件中。主要用了FileStream的ReadByte和WriteByte方法:

    class FileCombine {      public void CombineFile(String[] infileName,String outfileName)      {                  int b;             int n=infileName.Length;             FileStream[] fileIn=new FileStream[n];             using (FileStream fileOut = new FileStream(outfileName, FileMode.Create))             {                 for (int i = 0; i < n; i++)                 {                     try                     {                         fileIn[i] = new FileStream(infileName[i], FileMode.Open);                         while ((b = fileIn[i].ReadByte()) != -1)                             fileOut.WriteByte((byte)b);                     }                     catch (System.Exception ex)                     {                         Console.WriteLine(ex.Message);                     }                     finally                     {                         fileIn[i].Close();                     }                                     }             }      } }

    调用方法如下:

    class TestCombine {      public static void Main(String[] args)      {          FileCombine c=new FileCombine();          String[] file=new String[2];          file[0]="aa.txt";          file[1]="bb.txt";          c.CombineFile(file,"cc.txt");     } }

    拣尽寒枝不肯栖,寂寞沙洲。 分类: .Net 标签: 文件读写 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace FileCombine {     //读取n个文本文件,把文件内容合并到一个文本文件中。     //主要用了FileStream的ReadByte和WriteByte方法:     class FileCombine     {          public void CombineFile(String[] infileName,String outfileName)          {                     int b;                 int n=infileName.Length;                 FileStream[] fileIn=new FileStream[n];                 using (FileStream fileOut = new FileStream(outfileName, FileMode.Create))                 {                     for (int i = 0; i < n; i++)                     {                         try                         {                             fileIn[i] = new FileStream(infileName[i], FileMode.Open);                             while ((b = fileIn[i].ReadByte()) != -1)                                 fileOut.WriteByte((byte)b);                         }                         catch (System.Exception ex)                         {                             Console.WriteLine(ex.Message);                         }                         finally                         {                             fileIn[i].Close();                         }                                         }                 }          }     }     //调用方法如下:     class TestCombine     {          public static void Main(String[] args)          {              if (args.Length<5)              {                  Console.WriteLine("Usage:");                  Console.WriteLine("FileCombine startNum endNum -postfix fromDirectory toFile");                  return;              }              String startNum=args[0];              String endNum=args[1];              String postfix=args[2];              String fromDirectory = args[3];              if (!fromDirectory.EndsWith(@"\"))              {                  fromDirectory += @"\";              }              String toFile = args[4];              String[] file = null;              int posA = 0;              try              {                  posA = Convert.ToInt32(startNum);                  int posB = Convert.ToInt32(endNum);                  file = new String[posB - posA + 1];              }              catch (System.Exception ex)              {                  Console.WriteLine("input start/endNum error!");                  Console.WriteLine(ex.ToString());                  return;              }              FileCombine c=new FileCombine();              for (int i = 0; i < file.Length;i++ )              {                  file[i] = fromDirectory + posA.ToString() + postfix;                  posA += 1;              }              c.CombineFile(file, toFile);         }     } }
    转载请注明原文地址: https://ju.6miu.com/read-1300499.html
    最新回复(0)