RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
包含vb.net0x1的词条

vb.net 字符串,16进制间转换(求代码)

把字符串“12341168C5B7”转换为16进制数存为string型

成都网站建设哪家好,找创新互联!专注于网页设计、重庆网站建设公司、微信开发、小程序开发、集团企业网站建设等服务项目。核心团队均拥有互联网行业多年经验,服务众多知名企业客户;涵盖的客户类型包括:阳台护栏等众多领域,积累了大量丰富的经验,同时也获得了客户的一致称誉!

用shuzi=Convert.ToInt32("12341168C5B7",16)

就ok了。

反之用 shuzi.ToString("X")就行了。

给分!!!

12341168C5B7转换成10进制数就是20014839678391。。

而int32的最大值为2,147,483,647。。所以产生错误。

所以要用int64,它的最大值为9,223,372,036,854,775,807。也就是16位十六进制数0X7FFFFFFFFFFFFFFF。

难道还有比F靠后的数??????

VB.NET连接access数据库文件时提示“无效的授权说明”

数据库与文本文件返回数据的方法不同.如果把文本文件比作一个Textbox 的话,那么数据库更像是一个ListBox.使用文本文件时我们需要从整个Textbox中取出有用的信息,并进行处理,而Listbox则可以根据需要返回特定的某一项.

由于VB本身并不带有可以访问数据库的类,所以我们需要引用一个包含能访问数据库的类来使用数据库.这里我们采用ADODB,相比DAO和能访问数据库的API来说,它比DAO更灵活,更强大;而比起API,它更简单易用,更适合初学者.而Access数据库比起SQL,也相对简单了很多,且能够满足中小型应用程序的需要,所以我们在使用数据库时,选择了Access.

就像使用文本文件来存储数据一样,我们需要先设计好数据结构,只不过在设计Access数据库的结构时,我们需要用到其它的程序来进行详细的规划.建议采用的程序是office中的Access或VB自带的VISDATA.

当数据库设计好了以后,我们可以开始"数据库编程"了.

首先,我们需要引用ADO.具体的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",这里的"*.*"是指的时ADO的版本号,一般来说,应用程序或ActiveX控件都具有向下兼容性,所以我们尽可能选择比较新的版本.以确保程序在能识别旧版本Access的同时,也能识别较新版本的Access.

然后我们需要在程序中创建一个对象.就好比我们在窗体上添加一个FileBox才能看到文件名一样,只有创建了ADO对象,我们才能够访问数据库.常用的对象有两个,Connection和Recordset.

创建这两个对象的具体方法是:

1.在引用后,使用New关键字,如

Private Conn As New ADODB.Connection

Private Reco As New ADODB.Recordset

2.在没引用时,用CreateObject创建对象:

Dim Conn,Reco

Set Conn = CreateObject("ADODB.Connection")

Set Reco = CreateObject("ADODB.Recordset")

创建了对象之后,下一步我们要做的就是打开数据库了.

先看下面的代码,可以成功的打开数据库.

Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Main.mdb"

这句代码打开了D盘中的Main.mdb这个数据库.

Connection.Open方法的第一个参数是连接代码,它将传递给系统的数据库引擎.前半部分"Provider=Microsoft.Jet.OLEDB.4.0",它表示了数据库的类型.不同的数据库可能会不同.后半句"Source=d:\main.mdb"它表示了数据库所在的绝对路径.

打开数据库之后,还要打开表.假如数据库中有一个表,表名为"Users",字段有两个,一个为用户名,一个为密码.那么看以下代码.

1.想返回"Users"中,[用户名]为"去年烟花"的[密码]

Recordset.open "Select 密码 From Users Where 用户名='去年烟花'",Connection,1,1

之后我们就可以把用户输入的密码进行比较,看是否允许登录.

If Recordset.eof and Recordset.bof then

Msgbox "用户不存在!",16

Else

If PassWord =Recordset("密码").value then

msgbox "登录成功!",64

Else

msgbox "密码错误!",32

End If

End If

Recordset.Close

2.假设Admin已经成功登录系统,我们想把所有的用户名和密码都显示出来

Recordset.open "Select * From Users",Connection,1,1

这时,表已经被打开,我们就用以下代码把它显示出来.

Do whlie Not Recordset.eof

Print "用户名: " Recordset("用户名").value "密码: " Recordset("密码").value

Recordset.MoveNext

Loop

Recordset.Close

由以上代码示例可以看出,打开表时,可以只打开其中的一个字段,也可以打开所有.第一个参数是SQL语句.

Select [字段名] From 表名 [Where 条件]

这里的条件可以省略.且字段名也可以用"*"来代替所有字段.

需要注意的是,如果你用(1)中的方法打开,那么(2)后面显示的代码就不能再用在(1)中.因为(1)里并没有打开[用户名]字段,所以这一句Recordset("密码")就没有值存在,还有可能出错.

后面的条件,可以用"="、""、""等运算符.比如 "Where ID 32".(这里假设[ID]为数字型.)

这是打开的部分.第二个很重要的部分就是查询记录.

数据库它并不是把所有记录全部放到一个变量中备用的.而是以"当前记录"的形式来返回一个值.所以我们想从中找到有用的信息,就必须要对信息进行定位/筛选.

定位:

移动到下一条 Recordset.MoveNext

移动到上一条 Recordset.MovePrevious

移动到最后一条 Recordset.MoveLast

移动到第一条 Recordset.MoveFrist

移动到某一条 Recordset.Move Number

筛选:

Recordset.Find "条件"

如:[用方法(2)打开表之后]

Private Sub Command1_Click()

Recordset.Find "用户名=" "text1.text"

If Recordset.Eof True Then

Msgbox "该用户的密码是:" Recordset("密码").value,64

Else

Msgbox "未找到该用户的资料!",16

End If

End Sub

MoveNext 只有当Eof不为True时,才可用,否则发生错误.而MovePrevious刚是Bof不为True时....

而只要Eof 和 Bof中有一个不为真时,也就是说只要有一条记录时,它就可以使用.

Find 方法中的条件和Open时的第一个参数中的条件表述方法是完全一致的.当在已打开的记录集中,找不到该记录时,Eof为True.找到则当前的值就是符合条件的记录.

第三个部分就是添加/修改记录.

修改记录很简单,先按以上的方法找到相关记录之后,给记录赋值就可以了.

比如:[(修改密码)按方法(1)打开表之后]

Recordset("密码").value = "123456"

Recordset.Updata

需要注意的就是,在修改完成后,要调用Updata方法,这样修改才能生效.

而添加记录则可以用以下代码来实现:

Recordset.addnew

Recordset("用户名").value = "Admin"

Recordset("密码").value = "Admin"

Recordset.Updata

这里,先要调用Addnew方法,增加一条新记录,然后对这个新记录中的各字段赋值,最后再调用Updata方法.

到这里就差不多了,最后说一下上面提到的几个方法.

Recordset.Open SQL语句,数据源,游标类型,打开方法

SQL语句不用说了,就是Select那啥的,目的就是按要求从表中返回数据

数据源就是一个打开之后的Connection对象.

去他妈的游标类型,填1就可以了 [偷笑ing]

打开方法对应了几个常数,具体哪几个可以从对象浏览器里看.

对应数值的意义:

1 只读 2 独占 3 可写 4 自已可写,别人可读

Connection.open 连接代码,服务器用户名,密码

这里的连接代码就不在多说了,服务器用户名,密码只有在连接远程数据库时才用到.

VB.NET中,如何获得文本框中可见区域的首行的行号?

通过向文本框传递EM_LINEFROMCHAR消息可以得到光标所在的行号:

contst

EM_LINEFROMCHAR

=

0xC9

Dim

I

as

Long

I

=

SendMessage(textBox1.Hwnd,

EM_LINEFROMCHAR,

-1,

0)

VB.net怎样按住鼠标移动无边框窗体

1.在mouse事件中实现

2.调用windows API

实现方式为:

1.在mouse事件中实现

[csharp] view plain copy

Point mouseOff;//鼠标移动位置变量

bool leftFlag;//标签是否为左键

private void groupControl1_MouseUp(object sender, MouseEventArgs e)

{

if (leftFlag)

{

leftFlag = false;//释放鼠标后标注为false;

}

}

private void groupControl1_MouseMove(object sender, MouseEventArgs e)

{

if (leftFlag)

{

Point mouseSet = Control.MousePosition;

mouseSet.Offset(mouseOff.X, mouseOff.Y); //设置移动后的位置

Location = mouseSet;

}

}

private void groupControl1_MouseDown(object sender, MouseEventArgs e)

{

if (e.Button == MouseButtons.Left)

{

mouseOff = new Point(-e.X, -e.Y); //得到变量的值

leftFlag = true; //点击左键按下时标注为true;

}

}

private void groupControl1_MouseDown(object sender, MouseEventArgs e)

{

if (e.Button == MouseButtons.Left)

{

mouseOff = new Point(-e.X, -e.Y); //得到变量的值

leftFlag = true; //点击左键按下时标注为true;

}

}

2.调用windows API

调用前需要添加using System.Runtime.InteropServices;

[csharp] view plain copy

[DllImport("user32.dll")]

public static extern bool ReleaseCapture();

[DllImport("user32.dll")]

public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);

private void groupControl1_MouseDown(object sender, MouseEventArgs e)

{

if (e.Button == MouseButtons.Left)

{

ReleaseCapture(); //释放鼠标捕捉

//发送左键点击的消息至该窗体(标题栏)

SendMessage(Handle, 0xA1, 0x02, 0);

}

}

如何用vb.net将汉字转换成拼音阿

public string hz2py(string hz) //获得汉字的区位码

{

byte[] sarr = System.Text.Encoding.Default.GetBytes(hz);

int len = sarr.Length;

if (len1)

{

byte[] array = new byte[2];

array = System.Text.Encoding.Default.GetBytes(hz);

int i1 = (short)(array[0] - '\0');

int i2 = (short)(array[1] - '\0');

//unicode解码方式下的汉字码

// array = System.Text.Encoding.Unicode.GetBytes(hz);

// int i1 = (short)(array[0] - '\0');

// int i2 = (short)(array[1] - '\0');

// int t1 = Convert.ToInt32(i1,16);

// int t2 = Convert.ToInt32(i2,16);

int tmp=i1*256+i2;

string getpychar="*";//找不到拼音码的用*补位

if(tmp=45217tmp=45252){getpychar= "A";}

else if(tmp=45253tmp=45760){getpychar= "B";}

else if(tmp=47761tmp=46317){getpychar= "C";}

else if(tmp=46318tmp=46825){getpychar= "D";}

else if(tmp=46826tmp=47009){getpychar= "E";}

else if(tmp=47010tmp=47296){getpychar= "F";}

else if(tmp=47297tmp=47613){getpychar= "G";}

else if(tmp=47614tmp=48118){getpychar= "H";}

else if(tmp=48119tmp=49061){getpychar= "J";}

else if(tmp=49062tmp=49323){getpychar= "K";}

else if(tmp=49324tmp=49895){getpychar= "L";}

else if(tmp=49896tmp=50370){getpychar= "M";}

else if(tmp=50371tmp=50613){getpychar= "N";}

else if(tmp=50614tmp=50621){getpychar= "O";}

else if(tmp=50622tmp=50905){getpychar= "P";}

else if(tmp=50906tmp=51386){getpychar= "Q";}

else if(tmp=51387tmp=51445){getpychar= "R";}

else if(tmp=51446tmp=52217){getpychar= "S";}

else if(tmp=52218tmp=52697){getpychar= "T";}

else if(tmp=52698tmp=52979){getpychar= "W";}

else if(tmp=52980tmp=53640){getpychar= "X";}

else if(tmp=53689tmp=54480){getpychar= "Y";}

else if(tmp=54481tmp=55289){getpychar= "Z";}

return getpychar;

}

else

{

return hz;

}

}

public string transpy(string strhz) //把汉字字符串转换成拼音码

{

string strtemp="";

int strlen=strhz.Length;

for (int i=0;i=strlen-1;i++)

{

strtemp+=hz2py(strhz.Substring(i,1));

}

return strtemp;

}

create table tabpy(id int identity,b_begin varbinary(2),b_end varbinary(2),word varchar(2))

insert tabpy select 0xB0A1, 0xB0C4,'A'

union all select 0xB0C5, 0xB2C0,'B'

union all select 0xB2C1, 0xB4ED,'C'

union all select 0xB4EE, 0xB6E9,'D'

union all select 0xB6EA, 0xB7A1,'E'

union all select 0xB7A2, 0xB8C0,'F'

union all select 0xB8C1, 0xB9FD,'G'

union all select 0xB9FE, 0xBBF6,'H'

union all select 0xBBF7, 0xBFA5,'J'

union all select 0xBFA6, 0xC0AB,'K'

union all select 0xC0AC, 0xC2E7,'L'

union all select 0xC2E8, 0xC4C2,'M'

union all select 0xC4C3, 0xC5B5,'N'

union all select 0xC5B6, 0xC5BD,'O'

union all select 0xC5BE, 0xC6D9,'P'

union all select 0xC6DA, 0xC8BA,'Q'

union all select 0xC8BB, 0xC8F5,'R'

union all select 0xC8F6, 0xCBF9,'S'

union all select 0xCBFA, 0xCDD9,'T'

union all select 0xCDDA, 0xCEF3,'W'

union all select 0xCEF4, 0xD1B8,'X'

union all select 0xD1B9, 0xD4D0,'Y'

union all select 0xD4D1, 0xD7F9,'Z'

函数:

create function getfirstpy(@a varchar(200))

returns varchar(100)

as

begin

declare @i int,@j int,@result varchar(100)

set @result=''

set @i=len(@a)

set @j=1

while @j=@i

begin

select @result=@result+word from tabpy where cast(substring(@a,@j,1) as varbinary(2)) between b_begin and b_end

set @j=@j+1

end

return @result

end

vb.net二进制怎么读取文件?

一、二进制文件读写

1、写二进制数据到指定目录

==将barray字节数组中的数据创建在strFilename目录文件下,存储格式为二进制,False表示不添加,直接覆盖创建。

2、从指定路径下读取二进制数据到数组

==将目录中的文件读取到barry字节数组中,即读取二进制文件。

二、字符文件的读写

1、 将txtFile控件中的字符写到srtFileName指定目录,以创建方式。

2、从srtFileName目录中的文件读取到txtFile控件


网站名称:包含vb.net0x1的词条
当前地址:http://scyingshan.cn/article/dsipedi.html