二进制文件读写问题 上面有哪些缺陷和不规范的?现在报错 值对于UInt32太大或太小 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 int lr=Convert.ToInt32(sr.Length); FileStream sr=new FileStream(@"c:\ndpsetup.ico",FileMode.Open); int lr=Convert.ToInt32(sr.Length); Byte[] br=new byte[lr]; sr.Read(br,0,lr); for (int i=0;i<lr;i++) { label1.Text+=Convert.ToString(br[i],16); } sr.Close(); FileStream sw = new FileStream(@"c:\ss.dfg",FileMode.Create); BinaryWriter swb = new BinaryWriter(sw); byte[] by_write = Encoding.ASCII.GetBytes(this.label1.Text); swb.Write(by_write); swb.Close(); sw.Close(); wgclyjinjin(软件毛毛虫) 运行有没有问题阿?我测试怎么不行呢文件大小发生变化原来是1.05K现在为1.64K文件也不能打开我看了一下内容,象是后来写的时候写成了文本文件 private void button1_Click(object sender, System.EventArgs e){ FileStream sr=new FileStream(@"c:\temp\count.gif",FileMode.Open); int lr=Convert.ToInt32(sr.Length); Byte[] br=new byte[lr]; sr.Read(br,0,lr); string str = ""; for (int i=0;i<lr;i++) str += string.Format( "{0:X2}", br[i] ); textBox1.Text = str; sr.Close(); FileStream sw = new FileStream(@"c:\temp\ss.gif",FileMode.Create); BinaryWriter swb = new BinaryWriter(sw); byte[] by_write = new byte[lr]; for( int i = 0; i < lr; i++ ) { string s = str.Substring( i*2, 2 ); by_write[i] = (byte)Convert.ToInt32(s,16); } swb.Write(by_write); swb.Close(); sw.Close();}//测试通过 不好意思,再问问我是半路出家,对这些内部的东西很缺乏能不能解释一下原来代码的错误是和对应解决,就是字节和进制方面的东西?=========================================string.Format( "{0:X2}", br[i] )string s = str.Substring( i*2, 2 );by_write[i] = (byte)Convert.ToInt32(s,16); 这两个分支,哪个效率高? c#调用c++做的dll遇到的问题 关于using的使用 Bitmap位图比较,很棘手,寻找高手 winform下直接在datagrid中怎么更改数据??并且要提交到数据库中``急求一段代码?? winform客户端如何实现发送信息到HTTP网站 无法识别配置节点。。是不是我还有没引用的名称空间 C#如何读取无文件系统的SD卡数据 FTP断点续传 请教一下用C#实现QQ聊天窗口要用那个控件 请问如保将SqlDataReader 的数据存到DataTable中? 高分求删除cookie的方法
int lr=Convert.ToInt32(sr.Length);
Byte[] br=new byte[lr];
sr.Read(br,0,lr);
for (int i=0;i<lr;i++)
{
label1.Text+=Convert.ToString(br[i],16);
}
sr.Close(); FileStream sw = new FileStream(@"c:\ss.dfg",FileMode.Create);
BinaryWriter swb = new BinaryWriter(sw);
byte[] by_write = Encoding.ASCII.GetBytes(this.label1.Text);
swb.Write(by_write);
swb.Close();
sw.Close();
文件大小发生变化
原来是1.05K
现在为1.64K
文件也不能打开
我看了一下内容,象是后来写的时候写成了文本文件
{
FileStream sr=new FileStream(@"c:\temp\count.gif",FileMode.Open);
int lr=Convert.ToInt32(sr.Length);
Byte[] br=new byte[lr];
sr.Read(br,0,lr);
string str = "";
for (int i=0;i<lr;i++)
str += string.Format( "{0:X2}", br[i] );
textBox1.Text = str;
sr.Close(); FileStream sw = new FileStream(@"c:\temp\ss.gif",FileMode.Create);
BinaryWriter swb = new BinaryWriter(sw);
byte[] by_write = new byte[lr];
for( int i = 0; i < lr; i++ )
{
string s = str.Substring( i*2, 2 );
by_write[i] = (byte)Convert.ToInt32(s,16);
}
swb.Write(by_write);
swb.Close();
sw.Close();
}//测试通过
我是半路出家,对这些内部的东西很缺乏
能不能解释一下原来代码的错误是和对应解决,就是字节和进制方面的东西?=========================================
string.Format( "{0:X2}", br[i] )string s = str.Substring( i*2, 2 );
by_write[i] = (byte)Convert.ToInt32(s,16);