c#讀寫二進制
using System;
using System.IO;
using System.Text;
namespace Hello
{
class Program
{
static void Main(string[] args)
{
string srcfilename = "e:/copy/test.jpg";
string targetfilename = "e:/copy/test1.jpg";
var arr = new byte[] { 0x0F, 0x87, 0xC3, 0xE1, 0xF0 };
FileStream fs, outfile; //聲明FileStream對象
try
{
//讀文件流
fs = new FileStream(srcfilename, FileMode.OpenOrCreate,FileAccess.Read);
//寫文件流
outfile = new FileStream(targetfilename, FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter bw = new BinaryWriter(outfile);
var len = (int)fs.Length;
var bits = new byte[len];
fs.Read(bits, 0, len);
//修改二進制內容
Random r = new Random();
for (int i = 0; i < len; i++) {
var rint = r.Next(0, 4);
bits[i] |= bits[rint];
}
//寫入文件
bw.Write(bits);
//關閉流
bw.Close();
outfile.Close(); //關閉BinaryWriter對象
fs.Close(); //關閉文件流
Console.WriteLine("成功寫入");
}
catch (IOException ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
using System.IO;
using System.Text;
namespace Hello
{
class Program
{
static void Main(string[] args)
{
string srcfilename = "e:/copy/test.jpg";
string targetfilename = "e:/copy/test1.jpg";
var arr = new byte[] { 0x0F, 0x87, 0xC3, 0xE1, 0xF0 };
FileStream fs, outfile; //聲明FileStream對象
try
{
//讀文件流
fs = new FileStream(srcfilename, FileMode.OpenOrCreate,FileAccess.Read);
//寫文件流
outfile = new FileStream(targetfilename, FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter bw = new BinaryWriter(outfile);
var len = (int)fs.Length;
var bits = new byte[len];
fs.Read(bits, 0, len);
//修改二進制內容
Random r = new Random();
for (int i = 0; i < len; i++) {
var rint = r.Next(0, 4);
bits[i] |= bits[rint];
}
//寫入文件
bw.Write(bits);
//關閉流
bw.Close();
outfile.Close(); //關閉BinaryWriter對象
fs.Close(); //關閉文件流
Console.WriteLine("成功寫入");
}
catch (IOException ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.