REM 這是VB.NET寫的函數(shù) VB6應(yīng)該也是一樣的

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了開州免費(fèi)建站歡迎大家使用!
Function StrReverse(ByVal str As String)
Dim str2 As String = ""
Dim cs As Char() = str.ToCharArray()
For i As Integer = cs.Length - 1 To 0 Step -1
str2 = str2 + cs(i)
Next
Return str2
End Function
Function ByteToBin(m As Byte) As String ' 將字節(jié)型數(shù)據(jù)轉(zhuǎn)換成八位二進(jìn)制字符串
Dim c$
c$ = ""
Do While m 0
r = m Mod 2
m = m \ 2
c$ = r c$
Loop
c$ = Right("00000000" c$, 8)
ByteToBin = c$
End Function
Function Reverse(m As String) As String ' 將八位二進(jìn)制字符串顛倒順序
Dim i%, x$
x = ""
For i = 1 To 8
x = Mid(m, i, 1) x
Next i
Reverse = x
End Function
Function BinToByte(m As String) As Byte ' 將八位二進(jìn)制串轉(zhuǎn)換成十進(jìn)制
Dim x As String * 1, y%, z%
z = 0
For i = 1 To 8
x = Mid(m, i, 1)
y = x * 2 ^ (8 - i)
z = z + y
Next i
BinToByte = z
End Function
Private Sub Command1_Click()
Dim x As Byte, i%, fname$
fname = InputBox("請(qǐng)輸入要加密的文件名!注意加上路徑名:")
If Dir(fname) = "" Then
MsgBox "文件不存在!"
Exit Sub
End If
Open fname For Binary As #1 ' 以二進(jìn)制訪問模式打開待加密文件
For i = 1 To LOF(1) ' LOF函數(shù)是求文件長(zhǎng)度的內(nèi)部函數(shù)
Get #1, i, x ' 取出第i個(gè)字節(jié)
x = BinToByte(Reverse(ByteToBin(x))) ' 這里調(diào)用了三個(gè)自定義函數(shù)
Put #1, i, x ' 將加密后的這個(gè)字節(jié)寫回到文件原位置
Next i
Close
MsgBox "完成!"
End Sub
退出:Unload Me
網(wǎng)上幫你找的,如果不符合你的要求,你可以再去網(wǎng)上在搜搜,有很多代碼的。
看你的描述,既然Gb2312能取得中文,說明你收到的文字編碼是Gb2312。
字符和數(shù)字卻使用unicode編碼,不正常。你可以把char數(shù)組中的00去掉,
再用gb2312轉(zhuǎn)換就應(yīng)該沒問題了。
去掉就是把有用的字符向前移動(dòng)。
好象有個(gè)StrReverse函數(shù)是直接反轉(zhuǎn)字符串的吧..
我平時(shí)用的是VB6.但是.NET中應(yīng)該也是可以用MID的
你注意看FOR 是從len-1到0的..而mid中是不允許出現(xiàn)0的..
你看看MID運(yùn)行不了時(shí),是不是返回I是0的時(shí)間
改成:
For i = Len(sstr) To 1 Step -1
試試了?
那你就用文本文件的讀取方式讀回來,然后轉(zhuǎn)換為二進(jìn)制數(shù)組,再用二進(jìn)制方式保存。
新聞標(biāo)題:vb.net字符串顛倒 c語言字符串顛倒函數(shù)編寫
轉(zhuǎn)載來源:http://chinadenli.net/article32/hpjjpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站營(yíng)銷、域名注冊(cè)、定制網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)