C# 文件分割和文件合并
void SplitFile()
{
string sourceFile = "Old.mp4"; // 源文件路径
string outputFile1 = "part1.bin"; // 第一个输出文件路径(10KB)
string outputFile2 = "part2.bin"; // 第二个输出文件路径(剩余部分)
int firstFileSize = 10 * 1024; // 第一个文件大小为 10KB(10 * 1024 字节)
// 打开源文件
using (FileStream sourceStream = File.OpenRead(sourceFile))
{
// 创建第一个输出文件
using (FileStream outputStream1 = File.Create(outputFile1))
{
// 读取并写入第一个文件的 10KB 数据
byte[] buffer = new byte[firstFileSize];
int bytesRead = sourceStream.Read(buffer, 0, buffer.Length);
outputStream1.Write(buffer, 0, bytesRead);
}
// 创建第二个输出文件
using (FileStream outputStream2 = File.Create(outputFile2))
{
// 读取并写入剩余的数据
byte[] buffer = new byte[1024]; // 1KB 缓冲区
int bytesRead;
while ((bytesRead = sourceStream.Read(buffer, 0, buffer.Length)) > 0)
{
outputStream2.Write(buffer, 0, bytesRead);
}
}
}
}
void MergeFile()
{
string file1 = "part1.bin"; // 第一个二进制文件路径
string file2 = "part2.bin"; // 第二个二进制文件路径
string outputFile = "Merged.mp4"; // 合并后的文件路径
// 打开输出文件流
using (FileStream outputStream = File.Create(outputFile))
{
// 读取并写入第一个文件
using (FileStream inputStream = File.OpenRead(file1))
{
inputStream.CopyTo(outputStream); // 将第一个文件内容复制到输出文件
}
// 读取并写入第二个文件
using (FileStream inputStream = File.OpenRead(file2))
{
inputStream.CopyTo(outputStream); // 将第二个文件内容复制到输出文件
}
}
}