C#读写二进制文件,有加分 50
如题,header是256,以下每行长度一样。我想实现对它的读取,写入,还有转换。谁有写好的现成类,给发份,或者贴出来大家分享。有加分。谢谢!二进制文件大小为100+M,...
如题,header是256,以下每行长度一样。我想实现对它的读取,写入,还有转换。谁有写好的现成类,给发份,或者贴出来大家分享。有加分。谢谢!
二进制文件大小为100+M,邮箱:zhangpeng_40@126.com 展开
二进制文件大小为100+M,邮箱:zhangpeng_40@126.com 展开
1个回答
展开全部
这段代码可以实现将ascii文本的数字改变,小写变大写,你操作的时候可以使用fs.Seek()随时改变读取和写入的位置
void binfile()
{
FileStream fs = new FileStream(@"text.txt", FileMode.Open, FileAccess.ReadWrite);
BinaryReader br = new BinaryReader(fs);
BinaryWriter bw = new BinaryWriter(fs);
byte[] buffer=new byte[fs.Length];
br.Read(buffer, 0, (int)fs.Length);
for (int i = buffer.Length - 1; i >= 0;i-- )
{
char ch = (char)buffer[i];
if (ch>='0'&&ch<='9' )
{
ch = (char)(9 - ch + '0' * 2);
}
else if (ch>='a' &&ch<='z')
{
ch = (char)(ch + 'A'-'a');
}
buffer[i] = (byte)ch;
}
fs.Seek(0, SeekOrigin.Begin);
bw.Write(buffer);
bw.Close();
br.Close();
fs.Close();
}
void binfile()
{
FileStream fs = new FileStream(@"text.txt", FileMode.Open, FileAccess.ReadWrite);
BinaryReader br = new BinaryReader(fs);
BinaryWriter bw = new BinaryWriter(fs);
byte[] buffer=new byte[fs.Length];
br.Read(buffer, 0, (int)fs.Length);
for (int i = buffer.Length - 1; i >= 0;i-- )
{
char ch = (char)buffer[i];
if (ch>='0'&&ch<='9' )
{
ch = (char)(9 - ch + '0' * 2);
}
else if (ch>='a' &&ch<='z')
{
ch = (char)(ch + 'A'-'a');
}
buffer[i] = (byte)ch;
}
fs.Seek(0, SeekOrigin.Begin);
bw.Write(buffer);
bw.Close();
br.Close();
fs.Close();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询