对了,这字段是 varbinary 字段.用 byte[] 读出来后,长度为 760 .帮忙解决.200分!!!~!~!~!~!==========================================================
欢迎您:minghao1039 可用分:3448 总信誉分:86 注销我的登录
欢迎您:minghao1039 可用分:3448 总信誉分:86 注销我的登录
解决方案 »
- 嵌入在Web页面中的OCX 如何销毁问题
- 请问怎么实现更新中关闭当前程序,然后打开新程序?
- 大家好,我问一下我向数据库中插入一条数据,如何返回这条数据的自动增长值?
- 将窗口form1 中 “我爱你”在 FORM2中的MessageBox中显示出来。
- 请教各位大神,简单问题
- 数组拷贝的问题
- 请问怎么更改主机名和ip地址
- 创建一个带有Wizard的VS项目模板,遇到了几个问题,苦心求解!
- 控件显示太快,屏幕反应不过来只有空白,如何解决?
- 求大神解决,急用!!!
- 用递归求一给定目录下,所有文件大小的总合(包括子目录)!
- aspx 文件中包括 JavaScript 脚本,如何在 html 调用 C# Server 端中数据,
for (int iLoop = 0;iLoop < test.Length/每行字节数;iLoop++)
{
byte[每行字节数] bTemp = test[iLoop*每行字节数];
//这里我不确定bTemp是会以引用test的地址,如果不是,就要再给test赋值
if ((bTemp[位置] == "3F") || (bTemp[位置] == "FF"))
{
bTemp[位置] = "00";
}
}
要的话我发给你你可以把byte中的10进制化为16进制再做相应的修改,应该不是很难!btw:你是在开某个网络游戏的服务器吗?呵呵我同学开天堂服务器的时候也是这个问题,
我帮他写了个16进制和10进制互换的程序,效果还不错 wish u good luck
Greatsft
0x21,0x00,0x14,0x00,0x7F,0x8F,0xBE,0x00,0x00,0x00,
0xE5,0x10,0x20,0x00,0x7F,0x97,0x29,0x00,0x00,0x00,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0x45,0x00,0x1E,0x00,0x7F,0x77,0x1D,0x80,0x00,0x00,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xC4,0x00,0x03,0x00,0x00,0x00,0x00,0x80 };
for(int row=1 ; row<=12 ; row++ )
{
int pos=row*10+7;
byte b = read[pos];
if(b==0x3F || b==0xFF)
{
b=0x00;
}
read[pos] = b;
}输出:
07852200000000000000
210014007F8FBE000000
E51020007F9729000000
FFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFF00FFFF
45001E007F771D800000
FFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFF00FFFF
FFFFFFFFFFFFFF00FFFF
C400030000000080是你想要的结果不?
那只是一个演示,你不是已经得到byte[]了么???!!!
那就直接改喽,
对byte[]来说十进制和16进制有什么区别么?b==63 || b==255
b==0x3F || b==0xFF效果是一样的
读出来后是 byte[]数组.......r[760] 十进制的.3.现在已经可以把每组的数据更改..也就是更改数组内的每个元素的值.....但是改完了以后,如何写回到数据库中????写到 varbinary 字段里去...SQL的Convert()函数也不管用哎.C#里面,有没有把字符串转成 16进制字符的方法???比如:
r[0]=66
r[1]=11
r[2]=22
r[3]=aa
r[4]=dd那...结合起来后就是 "0x" + r[0].tostring() + ..............但这样只是字符串啊.还是写不进去...直接用数组往里面写,也是写不进去.....
谁有办法.
xxxcommand.Parameters.Add("@img", SqlDbType.VarBinary).Value = rbyte;
我是要修改呀,不是新加记录.
SqlDbType 需要引用system。data
SqlDbtype.Varbinary对应的就是array of byte