0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣在VB6中編程

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-12 17:08 ? 次閱讀

步驟1:字符串

怎樣在VB6中編程

VB處理字符串的方式有時(shí)會(huì)令人困惑。

texta =“ abcdefg”

在要計(jì)數(shù)為字符串的文本兩邊加上“符號。 Mid(String,Start,長度)從字符串中選擇一段文本

在字符串中沒有從0開始的起始字符串

textb = mid(texta,2,2)

這使變量textb =“ bc”

textb = mid(texta,4,4)

這會(huì)使變量textb =“ defg”

textb = mid(texta,4,5)

這會(huì)使變量textb =“ defg”

沒錯(cuò),如果您要選擇的文本長于最后一個(gè)字符結(jié)尾的可用文本

取決于您的程序,則必須放置陷阱以避免錯(cuò)誤。

陷阱:

textb = mid(texta,4,5)

如果len(textb)《5則‘Len()返回字符串的長度,《意味著小于

msgbox“文本太短“’顯示消息框字符串

exit sub‘這將退出您所在的子。結(jié)束代碼。如果您使用的是函數(shù),那么如果

在字符串中找到字符的位置,則可以退出函數(shù)

結(jié)束。

我們使用instr(Start,String1,String2)

texta =“ abcdefg”

textb = instr(1,texta,“ c”)’這將在字符串texta中找到字母c

textb現(xiàn)在等于3

注意:

Instr如果找不到則返回0(零)字符

重組:

這是一個(gè)令人討厭的問題,例如,您希望“ abcdefg”成為“ defgabc”

texta =“ abcdefg”

textb = mid(texta,4,4) &mid(texta,1,3)

還算不錯(cuò),但現(xiàn)在讓我們添加instr()函數(shù)

說您想重新組織窗簾字符處的字符串,但每次都不是相同的位置

texta =“ abcdefg”

textb =“ gfabdec”

textc = mid(texta,instr(1,texta,“ c”),len(texta)-instr(1,texta,“ c” )+ 1)&mid(texta,1,instr(1,texta,“ c”)-1)

請注意部分len(texta)-instr(1,texta,“ c”)+ 1因?yàn)閕nstr會(huì)計(jì)數(shù)您要查找的字符,所以您返回一個(gè)字符,以便mid()將字符yo您正在查找的字符串中的第一個(gè)字符串

textc現(xiàn)在等于“ cdefgab”

textd = mid(textb,instr(1,textb,“ c”),len(textb)-instr(1, textb,“ c”)+ 1)&mid(textb,1,instr(1,textb,“ c”)-1)

texted現(xiàn)在等于“ cgfabde”

讓我們嘗試查找不在字符串

texta =“ abcdefg”

textc = mid(texta,instr(1,texta,“ h”),len(texta)-instr(1,texta,“ h”)+ 1)&mid (texta,1,instr(1,texta,“ h”)-1)

您會(huì)收到錯(cuò)誤消息,因?yàn)镸id()的起始部分不能= 0,因?yàn)樽址畯?

開始,因此您必須避免運(yùn)行時(shí)錯(cuò)誤。這是執(zhí)行此操作的一種方法

texta =“ abcdefg”

如果instr(1,texta,“ h”)《》 0則

textc = mid(texta,instr(1,texta,“ h “),len(texta)-instr(1,texta,” h“)+ 1)和mid(texta,1,instr(1,texta,” h“)-1)

else‘只有一個(gè)聲明根據(jù)if情況

msgbox“無法在字符串中找到字符”’顯示帶有字符串的消息框

如果if

這幾乎總結(jié)了您需要了解的有關(guān)字符串的所有信息

第2步:轉(zhuǎn)換字符

十六進(jìn)制:

我在本周早些時(shí)候發(fā)現(xiàn)的一個(gè)與十六進(jìn)制(數(shù)字)函數(shù)的長度有關(guān)

它以十六進(jìn)制形式返回字符串

hex(11111111)返回“ A98AC7”

當(dāng)將ascii字符轉(zhuǎn)換為十六進(jìn)制時(shí),您會(huì)這樣做

texta =“ a”

hex(asc(texta))返回“ 61”

texta =“ k” hex(asc(texta))返回“ 6B”

對于ASCI字符中的大多數(shù),字符串將為2個(gè)字符

除非are的值小于16,否則僅返回1個(gè)字符

如果您希望它們?nèi)繛?個(gè)字符演員,您將執(zhí)行以下操作:

textb = hex(asc(texta))

如果len(textb)= 1,則

textb =“ 0”,并且textb‘為零而不是大寫o

end if

第3步:文件編輯

要打開文件,您需要一個(gè)freefile和一個(gè)文件名

gfile = FreeFile’gfile現(xiàn)在是下一個(gè)可用的免費(fèi)文件

c =“ c:\ test.txt”

然后有四種打開文件的方式

輸入-您只能閱讀。

輸出-您只能寫入,如果存在,它將刪除文件。回車符和換行符的最后一個(gè)字符

附加-您只能寫。它將添加到現(xiàn)有文件中?;剀嚭蛽Q行符最后一個(gè)字符

二進(jìn)制-讀寫。非常精確我現(xiàn)在唯一使用的一個(gè)。

用于構(gòu)建日志文件,然后附加使用它會(huì)將新條目添加到文件末尾。

對于更復(fù)雜的日志文件,請將整個(gè)文件加載到變量中并添加

dim stro作為字符串‘這是必須的,否則將出現(xiàn)錯(cuò)誤

gfile = FreeFile

c =“ c:\ test.txt”

open c對于二進(jìn)制文件,例如#gfile’記住gfile是數(shù)字

stro = space $(lof(gfile))‘當(dāng)打開二進(jìn)制文件時(shí),您必須知道要取的文本長度是lof(gfile)會(huì)返回多大gfile的長度和space $()返回一串空格,該空格是您輸入的數(shù)字的長度

get #gfile,1,stro’從文件號獲取,起始字節(jié),變量保存到其中。并僅加載變量的長度

close #gfile

stro現(xiàn)在等于文件test.txt。

您可以通過

ffile = FreeFile

stro = “ New line”&VbCrLf&stro‘添加“ New line”并插入返回和換行符,后跟原始文本

open c for binary as #ffile

kill c

put #ffile,1,stro’如果文件越來越小,put將覆蓋先前的信息,您應(yīng)該先殺死該文件,然后將其刪除。關(guān)閉#ffile

該文件中現(xiàn)在包含“新行”

我通過put函數(shù)發(fā)現(xiàn)的一件事是如果您嘗試放置諸如

put #ffile,133,chr(1)之類的字符,則會(huì)出錯(cuò),這將用字符1或十六進(jìn)制0x01替換字節(jié)133處的字符

我在一個(gè)程序中執(zhí)行此操作時(shí)發(fā)現(xiàn)我實(shí)際上添加了十六進(jìn)制0x08000100000001,這非常奇怪。我通過將文件加載到變量并執(zhí)行字符串mods來解決了這個(gè)問題

i = 133

stro = mid(stro,1,i-1)&chr(1)&mid(stro,i + 1,len (stro)-i)

然后

輸入#ffile,1,stro

責(zé)任編輯:wv

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3616

    瀏覽量

    93739
  • VB6
    VB6
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    10881
收藏 人收藏

    評論

    相關(guān)推薦

    ADS1255 Vb電壓異常的原因?怎么解決?

    測試ADS1255的時(shí)候,VIN接地,發(fā)現(xiàn)的問題是AIN0與AIN1之間的電壓,也就是Vb電壓異常,條件是基準(zhǔn)2.5V,buffer關(guān)閉,速率1000sps,其它是默認(rèn)參數(shù), G=1時(shí)候
    發(fā)表于 11-20 08:36

    RTL8309NI-VB-CG VB含義

    RTL8309NI-VB-CG尾綴VB是什么意思?跟沒帶的有什么區(qū)別?哪位大神知道?
    發(fā)表于 11-18 19:04

    國產(chǎn)可編程硅振機(jī)器人伺服系統(tǒng)的應(yīng)用,替換SiTime

    國產(chǎn)可編程硅振機(jī)器人伺服系統(tǒng)的應(yīng)用,替換SiTime
    的頭像 發(fā)表于 09-26 10:09 ?256次閱讀
    國產(chǎn)可<b class='flag-5'>編程</b>硅振<b class='flag-5'>在</b>機(jī)器人伺服系統(tǒng)<b class='flag-5'>中</b>的應(yīng)用,替換SiTime

    簡述socket編程的常用函數(shù)

    Socket編程是一種基于TCP/IP協(xié)議的網(wǎng)絡(luò)編程技術(shù),它允許應(yīng)用程序通過網(wǎng)絡(luò)進(jìn)行通信。Socket編程,有許多常用的函數(shù),它們用于創(chuàng)
    的頭像 發(fā)表于 08-16 10:49 ?389次閱讀

    OPA657 Vb電壓的選取,過大的Vb電壓是否會(huì)擊穿運(yùn)放,以及是否需要額外的保護(hù)?

    OPA657應(yīng)用,我的光電探測器是一個(gè)APD,需要50V的很大的Vb,這樣大的一個(gè)偏置電壓,是否會(huì)對后級產(chǎn)生影響,是不是需要額外的隔直或者保護(hù)。
    發(fā)表于 07-29 06:41

    基于VB6.0 實(shí)現(xiàn) CAN信號收發(fā) Demo

    VB6.0、libTSCAN1關(guān)于Demo工程簡要描述:VB6.0編程語言調(diào)用libTSCAN接口實(shí)現(xiàn)硬件掃描、連接、CAN報(bào)文單幀發(fā)送、周期發(fā)送、報(bào)文接收,報(bào)文過濾。典
    的頭像 發(fā)表于 07-27 08:21 ?758次閱讀
    基于<b class='flag-5'>VB</b>6.0 實(shí)現(xiàn) CAN信號收發(fā) Demo

    旋轉(zhuǎn)編碼器PLC怎么編程

    工業(yè)自動(dòng)化領(lǐng)域,旋轉(zhuǎn)編碼器與可編程邏輯控制器(PLC)的結(jié)合應(yīng)用極為廣泛。旋轉(zhuǎn)編碼器通過提供精確的旋轉(zhuǎn)角度或位置信息,為PLC提供反饋信號,進(jìn)而實(shí)現(xiàn)對設(shè)備的精確控制。本文將詳細(xì)介紹旋轉(zhuǎn)編碼器PLC
    的頭像 發(fā)表于 06-17 09:24 ?1673次閱讀

    國產(chǎn)可編程振蕩器醫(yī)療CT機(jī)的應(yīng)用,替代SITime

    國產(chǎn)可編程振蕩器醫(yī)療CT機(jī)的應(yīng)用,替代SITime
    的頭像 發(fā)表于 06-12 10:06 ?508次閱讀
    國產(chǎn)可<b class='flag-5'>編程</b>振蕩器<b class='flag-5'>在</b>醫(yī)療CT機(jī)<b class='flag-5'>中</b>的應(yīng)用,替代SITime

    編程純硅振蕩器液晶拼接屏的應(yīng)用,替代SiTime

    編程純硅振蕩器液晶拼接屏的應(yīng)用,替代SiTime
    的頭像 發(fā)表于 05-29 09:49 ?497次閱讀
    可<b class='flag-5'>編程</b>純硅振蕩器<b class='flag-5'>在</b>液晶拼接屏<b class='flag-5'>中</b>的應(yīng)用,替代SiTime

    國產(chǎn)可編程純硅振蕩器醫(yī)療超聲影像的應(yīng)用

    國產(chǎn)可編程純硅振蕩器醫(yī)療超聲影像的應(yīng)用
    的頭像 發(fā)表于 05-14 10:00 ?518次閱讀
    國產(chǎn)可<b class='flag-5'>編程</b>純硅振蕩器<b class='flag-5'>在</b>醫(yī)療超聲影像<b class='flag-5'>中</b>的應(yīng)用

    國產(chǎn)可編程MEMS振蕩器(替代SiTime)測量儀器的應(yīng)用

    國產(chǎn)可編程MEMS振蕩器(替代SiTime)測量儀器的應(yīng)用
    的頭像 發(fā)表于 04-01 09:44 ?541次閱讀
    國產(chǎn)可<b class='flag-5'>編程</b>MEMS振蕩器(替代SiTime)<b class='flag-5'>在</b>測量儀器<b class='flag-5'>中</b>的應(yīng)用

    請問h7b0VB誤燒錄750VB程序后如何修復(fù)?

    如題, h7b0VB芯片,用MDK,不小心下錯(cuò)了h750的程序,而且是用了2M Flash的程序。 現(xiàn)在h7b0vb在下程序的時(shí)候卡在erase過程。 通過DFU,能識(shí)別到芯片,但是讀不到FLASH
    發(fā)表于 03-29 09:11

    MAVLink應(yīng)用編程編程原理和思路

    嵌入式開發(fā)過程,UART、 CAN、 USB等通信基本離不開通信協(xié)議。 下面給大家分享一種通信協(xié)議(MAVLink)應(yīng)用編程編程
    發(fā)表于 03-08 12:45 ?922次閱讀
    MAVLink<b class='flag-5'>在</b>應(yīng)用<b class='flag-5'>編程</b><b class='flag-5'>中</b>的<b class='flag-5'>編程</b>原理和思路

    vb語言和c++語言的區(qū)別

    VB語言和C++語言是兩種不同的編程語言,雖然它們都屬于高級編程語言,但在設(shè)計(jì)和用途上有很多區(qū)別。下面將詳細(xì)比較VB語言和C++語言的區(qū)別。 設(shè)計(jì)目標(biāo):
    的頭像 發(fā)表于 02-01 10:20 ?2326次閱讀

    KEIL中使用C對M0編程時(shí)怎樣對函數(shù)指定地址呢?

    KEIL中使用C對M0編程時(shí)怎樣對函數(shù)指定地址呢?對變量和常數(shù)的定位沒問題,就是函數(shù)總搞不好。謝謝。
    發(fā)表于 01-18 07:14