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()
串連一個數組中的所有字串