1.生成验证码控件代码
Imports System
Imports System.IO
Imports System.Drawing
Imports System.Drawing.Imaging
Partial Public Class gif
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim sCodeNum As String = RndNum(6)
Session("CodeNum") = sCodeNum
ValidateCode(sCodeNum)
End Sub
Protected Function RndNum(ByVal nCodeNum) As String
Dim sSourceCode As String = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z"
Dim sCodeNum As String = ""
Dim arraySourceCode() As String = sSourceCode.Split(",")
Randomize()
For i As Integer = 1 To nCodeNum
sCodeNum = sCodeNum & arraySourceCode(CInt(Rnd() * 61))
Next
Return sCodeNum
End Function
Protected Sub ValidateCode(ByVal sCodeNum)
Dim gWidth As Integer = CInt(Len(sCodeNum) * 14)
Dim Img As New Bitmap(gWidth, 24)
Dim g As Graphics = Graphics.FromImage(Img)
g.DrawString(sCodeNum, (New Font("Arial", 12)), (New SolidBrush(Color.Red)), 3, 3)
Dim ms As New MemoryStream()
Img.Save(ms, ImageFormat.Png)
Response.ClearContent()
Response.ContentType = "image/Png"
Response.BinaryWrite(ms.ToArray())
g.Dispose()
Img.Dispose()
Response.End()
End Sub
End Class
2.VB.NET常用字符串函数
1:字符串函数
StrComp 比较两个字符串
StrConv 转换字符串
InStrRev、StrReverse 翻转字符串
LCase、UCase 转换为小写或大写
Space、StrDup 创建包含重复字符的字符串
Len 查找字符串长度
FormatCurrency、FormatDateTime、FormatNumbe、FormatPercent
格式化字符串
InStr、Left、Lset、LTrim、Mid、Right、Rset、RTrim、Trim
操作字符串
Replace 替换指定子字符串
Filter 返回基于筛选的字符串数组
Split、Join 返回指定数量的子字符串
sc、AscW、Chr、ChrW 使用ASCII值和ANSI值
1:StrComp(Str1,Str2,<Compare>)(默认要比较大小写,大写不小写小)
第三个参数可选,为
Binary
根据从字符内部二进制表示形式导出的排序执行二进制比较(默认情况)
Text
根据系统的LocaleID值所确定的不区分大小写的文本排序顺序执行文本比较
当Str1排序在Str2之前
-1
当Str1等于Str2
0
当Str1排序在Str2之后
1
StrComp(“AVCD”,”abcd”,CompareMethod.Text)
返回0
2:StrConv(str,conversion,<localelID>)
第三个参数可选
Conversion:Microsoft.VisualBasic.VBStrConv成员。指定执行转换类型的枚举值
3:InStrRev(StrCheck,StrMatch,<start>,<Compare>)
StrCheck:要对其进行搜索的字符串
StrMathc:要搜索的
未找到 StringMatch返回0
可以返回某个字符串从另一字符串的右恻算起第一次出现的位置
如:
Mystr=”the quick brown fox jumps over the lazy dog”
InStrRev(mystr,”the”):32
InstrRev(mystr,”the”,16):1
StrReverse(str)
返回与指定字符串的字符顺序相反的字符串
4:Space(num)
返回有指定数量空格组成的字符串。
5:StrDup(number,character)
如果character是一个字符串,只取第一个字符
StrDup(5,”Wow! What a string”):WWWWW
6:FormatCurrency
返回一个格式为货币值的表达式
7:FormateDateTime()
返回一个格式为时间值的表达式
8:FormatePercent
返回一个一个后面带%的表达式
9:InStr(start,str1,str2,<compare>)
返回一个指定一个字符串在另一个字符串中的第一个匹配的起始位置
10:Mid(str,num1<,num2>)
从一个字符串返回包含指定数量字符的字符串。
Mid(“Mid Function Demo”,1,3):Mid
Mid(“Mid function Demo”,14,4):Demo
11:Replace(str,str1,str2<,stare>,<count,><compare>)
12:Filter(soure,match,include,compare)
返回一个从零开始的数组。筛选
13:Split()
14:Join()
连接一个数组中的所有字符串