(原) .NET 读写大文件
using System;
using System.IO;
class FStream
{
private const int SIZE = 1024;
static void Main()
{
DealBigFile(@"C:\Kit.rar");
}
// 处理大文件
public static void DealBigFile(string fileName)
{
using (FileStream fileStream = new FileStream(fileName, FileMode.Open ,FileAccess.Read))
{
int offset=0;
int count = 0;
do{
byte[] dataArray = new byte[SIZE];
count = fileStream.Read(dataArray, 0, SIZE);
offset += count;
// 计算处理后,即dataArray发生变化
// ..
WriteFile(@"C:\2.rar", dataArray);
}while(count==SIZE);
fileStream.Close();
fileStream.Dispose();
}
}
// 写入文件(追加的形式)
public static void WriteFile(string fileName, byte[] array)
{
using (FileStream fileStream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write))
{
fileStream.Seek(fileStream.Length, 0);
fileStream.Write(array, 0, array.Length);
fileStream.Flush();
fileStream.Close();
fileStream.Dispose();
}
}
}
using System.IO;
class FStream
{
private const int SIZE = 1024;
static void Main()
{
DealBigFile(@"C:\Kit.rar");
}
// 处理大文件
public static void DealBigFile(string fileName)
{
using (FileStream fileStream = new FileStream(fileName, FileMode.Open ,FileAccess.Read))
{
int offset=0;
int count = 0;
do{
byte[] dataArray = new byte[SIZE];
count = fileStream.Read(dataArray, 0, SIZE);
offset += count;
// 计算处理后,即dataArray发生变化
// ..
WriteFile(@"C:\2.rar", dataArray);
}while(count==SIZE);
fileStream.Close();
fileStream.Dispose();
}
}
// 写入文件(追加的形式)
public static void WriteFile(string fileName, byte[] array)
{
using (FileStream fileStream = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write))
{
fileStream.Seek(fileStream.Length, 0);
fileStream.Write(array, 0, array.Length);
fileStream.Flush();
fileStream.Close();
fileStream.Dispose();
}
}
}
posted on 2007-12-26 21:07 mjgforever 阅读(567) 评论(0) 编辑 收藏 举报