vb.net绋嬪簭鐨勮皟璇曞拰閿欒澶勭悊
鍙戝竷: 2008-6-26 22:06 | 浣滆: admin | 鏌ョ湅: 16娆
浠讳綍绋嬪簭鍛樺湪缂栫▼鐨勬椂鍊欓兘涓嶅彲鑳戒竴娆¢氳繃锛岃偗瀹氫細鍑鸿繖鏍烽偅鏍风殑閿欒锛屼細鏈変竴浜涙剰鎯充笉鍒扮殑鎯呭喌鍙戠敓锛岃屼綘涓嶄細鎯冲埌杩欎簺鎯呭喌浼氬鑷翠唬鐮佺殑澶辫触銆傚浜庨敊璇殑璋冭瘯鍜屽湪缂栫▼杩囩▼涓鍙兘鍑虹幇閿欒鐨勫湴鏂圭粰鍑烘彁绀烘垨杩涜閿欒澶勭悊鏄紪绋嬩腑鐨勯噸瑕侀儴鍒嗭紝褰撶劧鑹ソ鐨勭紪绋嬩範鎯赴瀵岀殑瀛︽湳鐭ヨ瘑鏄紪濂界▼鐨勫墠鎻愩 Visual Studio.NET鏈変竴涓瀯寤哄埌寮鍙戠幆澧冧腑鐨勫鏉傜殑璋冭瘯鍣ㄣ傝繖涓皟璇曞櫒閫傜敤浜嶸isual Studio.NET鏀寔鐨勬墍鏈夎瑷锛岃繖鏍峰彧瑕佹帉鎻′簡涓绉嶈瑷鐨勮皟璇曟妧宸э紝瀵逛簬Visual Studio.NET鏀寔鐨勪换浣曡瑷锛屼綘閮藉彲浠ヨ繘琛岃皟璇曪紝寰堟柟渚垮惂銆
濡傛灉浣犳病鏈夐亣瑙佹煇浜涢敊璇苟澶勭悊杩欎簺閿欒锛屼娇鐢ㄨ呭彲鑳戒細鐪嬪埌鍘熷鐨勯敊璇俊鎭紝鏄叧浜嶤LR(Common Language Runtime锛屽叕鍏辫瑷杩愯鏃)缁欎簣鐨勪竴涓湭杩涜澶勭悊鐨勫紓甯镐俊鎭傝繖涓秷鎭敤鎴峰苟涓嶅鏄撶悊瑙o紝鐢ㄦ埛涔熶笉鐭ラ亾鎺ヤ笅鏉ヨ骞蹭粈涔堟垨鑰呰濡備綍澶勭悊閿欒銆傚埄鐢╒isual Studio.NET鎻愪緵鐨勫彲鐢ㄤ簬鎵鏈夎瑷鐨勯氱敤閿欒澶勭悊鍔熻兘锛屼綘鍙互鍘绘娴嬩唬鐮佸苟鎹曟崏鍙兘鍙戠敓鐨勪换浣曢敊璇傚鏋滅‘瀹炲彂鐢熶簡涓涓敊璇紝浣犲彲浠ユ妸鍘熷鐨勯敊璇俊鎭彉鎴愮敤鎴峰鏄撶悊瑙g殑淇℃伅锛屽苟鍛婅瘔鐢ㄦ埛搴旇鎬庝箞鍔炪
棣栧厛鎴戜滑瑕佷簡瑙e彲鑳藉彂鐢熺殑閿欒閮芥湁鍝簺銆 閿欒绫诲瀷涓昏鍒嗕负3绉嶏細璇硶閿欒銆佹墽琛岄敊璇拰閫昏緫閿欒銆傚綋鐒跺緢澶氭椂鍊欐垜浠彲鑳芥煡浜嗗崐澶╀篃娌℃煡鍑洪敊璇紝涓嶇敤澶潃鎬ワ紝涔熶笉蹇呮氮璐硅繃澶氱殑鏃堕棿鏉ョ嫭鑷煡閿欙紝浣犲彲浠ュ緟浼氬啀鍥炴潵鏌ワ紝鎹㈡崲鑴戝瓙锛屾垨鑰呰鍒汉甯綘鐪嬩竴涓嬶紝杩欐牱浼氬揩涓浜涖
1.璇硶閿欒
褰撹绠楁満涓嶈兘鈥滅悊瑙b濅綘鎵缂栧啓鐨勪唬鐮佹椂灏变細鍙戠敓璇硶閿欒銆傝繖鍙兘鏄洜涓烘寚浠や笉瀹屽叏銆佹彁渚涙寚浠ょ殑椤哄簭鏈夐棶棰橈紝鎴栬呭弬鏁颁紶閫掗敊璇瓑绛夈備緥濡傦紝澹版槑涓涓彉閲忥紝浣嗗湪鍚庨潰鐢ㄥ埌杩欎釜鍙橀噺鏃朵笉灏忓績鎶婂悕绉板啓閿欎簡锛岃繖鏄彂鐢熺殑灏辨槸璇硶閿欒銆傝娉曢敊璇槸鏈鏄撲簬鍙戠幇鍜岀‘瀹氱殑閿欒Visual Studio.NET涓殑寮鍙戠幆澧冩湁涓涓浉褰撳鏉傜殑璇硶鏍¢獙鏈哄埗锛屽畠瀵瑰彉閲忓拰瀵硅薄鎻愪緵浜嗗嵆浣跨殑璇硶鏍¢獙锛屽彲浠ヨ浣犲湪鍑虹幇璇硶閿欒鏃剁珛鍒荤煡閬撱傚綋浣犳兂浣跨敤鏈粡澹版槑杩囩殑鍙橀噺鎴栧璞℃椂锛孷isual Studio.NET寮鍙戠幆澧冧細鍦ㄨ鍙橀噺鎴栧璞″悕绉颁笅闈㈠姞涓嬪垝绾裤傚鏋滀綘灏嗗厜鏍囨斁鍦ㄨ繖涓娉曢敊璇笂锛屽紑鍙戠幆澧冨氨浼氭樉绀哄嚭宸ュ叿鎻愮ず琛ㄦ槑杩欎釜閿欒銆

涓婇潰鐨勬彁鍒扮殑涓嬪垝绾垮拰鎻愮ず鏄湪娌℃湁鏀瑰彉Project鐨凱roperty Pages瀵硅瘽妗嗕腑鐨凮ption Explicit閫夐」涓哄墠鎻愮殑锛屽湪榛樿鎯呭喌涓嬪畠 鏄紑鍚殑.鍚屾牱涔熸槸鍦ㄦ病鏈夋寚瀹氫唬鐮佷腑鐨凮ption Explicit Off璇彞,瀹冧細瑕嗙洊Project鐨凱roperty Pages瀵硅瘽妗嗕腑鐨凮ption Explicit閫夐」濡傛灉灏哋ption Explicit閫夐」鎴栬鍙ヨ缃负On锛屽氨浼氬己杩綘鍦ㄤ娇鐢ㄥ彉閲忎箣鍓嶅厛瀵瑰畠浠繘琛屽0鏄庯紝鍚﹀垯灏变細鍑虹幇涓婂浘鎵绀虹殑閿欒銆傚湪缂栬瘧鏃朵篃浼氭敹鍒伴敊璇姤鍛娿傚叧闂閫夐」鎴栬鍙ユ椂锛屾墍鏈変负鏄惧紡澹版槑鐨勫彉閲忛兘鍋囧畾涓篛bject鏁版嵁绫诲瀷锛屼互涓嬫槸MSDN褰撲腑瀵筄bject鐨勮В閲婏細
The Object data type is a 32-bit (4-byte) address that points to an object within your application or in some other application. When you declare a variable as Object, you can subsequently use it to refer to any object recognized by your application, as in the following
example:
Dim objDb As Object
Dim MyCollection As New Collection()
' ... Suppose MyCollection has now been populated.
objDb = MyCollection.Item(1)
Object鏁版嵁绫诲瀷鍙互淇濆瓨浠讳綍绫诲瀷鐨勫硷紝浣嗕笌杩欎簺鍊肩浉瀵瑰簲鐨勬暟鎹被鍨嬬浉姣旓紝瀹冨鐞嗚繖浜涘肩殑閫熷害瑕佹參銆傛墍浠ュ缓璁紑鍚疧ption Explicit閫夐」銆

涓婇潰鐨勬彁鍒扮殑涓嬪垝绾垮拰鎻愮ず鏄湪娌℃湁鏀瑰彉Project鐨凱roperty Pages瀵硅瘽妗嗕腑鐨凮ption Explicit閫夐」涓哄墠鎻愮殑锛屽湪榛樿鎯呭喌涓嬪畠鏄紑鍚殑銆傚悓鏍蜂篃鏄湪娌℃湁鎸囧畾浠g爜涓殑 Option Explicit Off璇彞锛屽畠浼氳鐩朠roject鐨凱roperty Pages瀵硅瘽妗嗕腑鐨凮ptionExplicit 閫夐」濡傛灉灏哋ption Explicit閫夐」鎴栬鍙ヨ缃负On锛屽氨浼氬己杩綘鍦ㄤ娇鐢ㄥ彉閲忎箣鍓嶅厛瀵瑰畠浠繘琛屽0鏄庯紝鍚﹀垯灏变細鍑虹幇涓婂浘鎵绀虹殑閿欒銆傚湪缂栬瘧鏃朵篃浼氭敹鍒伴敊璇姤鍛娿
2.鎵ц閿欒
鎵ц绋嬪簭鏃舵墍鍙戠敓鐨勯敊璇氨鏄墽琛岄敊璇傚ぇ閮ㄥ垎鐨勬墽琛岄敊璇殑鍙戠敓鏄洜涓哄紑鍙戜汉鍛樹笉鑳介鏂欏苟瀹炵幇鍚堥傜殑閿欒澶勭悊閫昏緫銆備笅闈㈡槸涓浜涙瘮杈冨吀鍨嬬殑鎵ц閿欒锛
1.
鐢ㄩ浂浣滀负闄ゆ暟
2.
璁块棶涓嶅瓨鍦ㄧ殑鏂囦欢
3.
璁块棶娌℃湁璁剧疆缁存暟鐨勬暟缁
4.
璁块棶瓒呰繃涓婇檺鐨勬暟缁
5.
璋冪敤涓娈电▼搴忥紝缁欏畠浼犻掗敊璇殑鍙樺厓鏁扮洰鎴栭敊璇被鍨嬬殑鍙樺厓
闃叉鎵ц閿欒鐨勬渶濂芥柟娉曟槸鍦ㄩ敊璇彂鐢熶箣鍓嶅厛杩涜棰勫厛鐨勮冭檻锛屽苟鐢ㄩ敊璇鐞嗘妧鏈崟鎹夊拰澶勭悊閿欒銆傝繕搴旇鍦ㄩ儴缃蹭唬鐮佷箣鍓嶅交搴曟娴嬩竴鐣
3.閫昏緫閿欒
閫昏緫閿欒鏄寚浜х敓鎰忔枡涔嬪鎴栧浣欑粨鏋滅殑閿欒锛岃繖绫婚敊璇槸鏈闅炬壘鍒颁篃鏈闅惧彂鐜版晠闅滅殑閿欒銆傚亣瀹氬湪鏁版嵁搴撳瓧娈垫垨鍦ㄦ枃浠朵腑鐨勬枃鏈腑鐢ㄤ唬 鐮佽缃竴涓瓧绗︿覆鍙橀噺锛屽皢杩欎釜瀛楃涓插彉閲忓拰鐢ㄦ埛杈撳叆鐨勬枃鏈仛涓涓嬫瘮杈冦傚鏋滃寘鍚枃鏈殑鍙橀噺鏄ぇ鍐欏瓧姣嶅拰灏忓啓瀛楁瘝 娣锋潅鐨勶紝鑰岀敤鎴疯緭鍏ユ枃鏈叏閮ㄦ槸澶у啓鎴栧叏閮ㄦ槸灏忓啓鐨勶紝閭d箞杩欎釜姣旇緝灏变細澶辫触銆傝闃叉杩欐牱鐨勯昏緫閿欒锛屽彲浠ュ皢杩涜姣旇緝鐨勫弻鏂归兘杞崲涓哄ぇ鍐欐垨鑰呭皬鍐欏瓧姣嶃傚彲浠ョ敤UCase鍜孡Case鍑芥暟銆俁eturns a string or character containing the specified string converted to uppercase.Returns a string or character converted to lowercase.閫昏緫閿欒鐨勫彟涓涓櫘閬嶇被鍨嬫槸鍦ㄥ鐞嗗簲鐢ㄧ▼搴忕壒娈婄殑鏂囦欢鏄骇鐢熺殑銆傚亣瀹氭湁涓娈靛簲鐢ㄧ▼搴忕敤鏉ヤ互鏌愮鏍煎紡鍒涘缓鏂囦欢锛屽苟涓斿厑璁哥敤鎴锋墦寮骞剁紪杈戣繖浜涙枃浠躲傚綋鐢ㄦ埛鐢ㄤ笉鍚岀殑鏍煎紡鎵撳紑鏂囦欢鏃讹紝鏂囦欢涓嶄細鍖呭惈绋嬪簭鎵鏈熸湜鏍煎紡鐨勬暟鎹紝杩欐牱褰撶敤鎴疯瘯鍥惧鐞嗚鏂囦欢鏃跺氨浼氬彂鐢熼昏緫閿欒鎴栨墽琛岄敊璇傚鐞嗙殑鏂规硶鏄楠屼竴涓嬫枃浠剁殑绗竴琛屼互纭繚鏂囦欢鍖呭惈浜嗘墍鏈熸湜鐨勬暟鎹牸寮忋
涓嬮潰鎴戜滑鏉ヤ簡瑙d竴涓媀isual Studio.NET寮鍙戠幆澧冧腑鐨勪竴浜涘唴缃殑璋冭瘯鍔熻兘銆
1.鏂偣
鍦ㄨ皟璇曚竴澶ф绋嬪簭鏃讹紝浣犲彲鑳芥兂璁╀唬鐮佽繍琛屽埌鏌愪竴澶勭劧鍚庡仠涓嬫潵妫鏌ユ槸鍚︽槸浣犳墍棰勬湡鐨勭粨鏋溿傝繖鏃跺氨瑕佷娇鐢ㄦ柇鐐逛簡锛屼粬浠彲浠ヨ浠g爜鍦ㄤ换浣曞畾涔夋柇鐐圭殑鍦版柟鍋滄锛屽苟涓斾綘鍙互鍦ㄤ换浣曞湴鏂硅缃柇鐐广傛敞鎰忥紝鍦ㄨ缃柇鐐圭殑閭h涔嬪墠灏变細鍋滄浠g爜鐨勬墽琛屻
浣犲彲浠ュ湪缂栧啓浠g爜鏄缃柇鐐癸紝涔熷彲浠ュ湪杩愯鏃堕氳繃杞崲鍒颁唬鐮佺獥鍙d腑鍦ㄤ綘鎵甯屾湜鐨勪綅缃繘琛岃缃傚綋绋嬪簭姝e湪瀹為檯鎵ц涓娈典唬鐮佹椂锛屼笉鑳戒负瀹冭缃柇鐐广傚綋寮鍙戠幆澧冮亣鍒颁竴涓柇鐐规椂灏变細鍋滄鎵ц浠g爜锛屽簲鐢ㄧ▼搴忓皢澶勪簬涓柇妯″紡銆傚彧鏈夊湪绋嬪簭澶勪簬涓柇妯″紡鏃讹紝鎵嶈兘浣跨敤璋冭瘯鍔熻兘銆
璁剧疆鏂偣寰堝鏄擄紝閫氳繃鍗曞嚮浠g爜琛屾梺杈圭殑鐏拌竟涓婄殑鎯宠璁剧疆鏂偣鐨勪綅缃紝灏卞彲浠ュ湪璁捐鏃舵垨杩愯鏃剁殑浠g爜涓繘琛岃缃簡锛屾柇鐐规槸涓涓孩鑹茬殑鍦嗙偣銆傚綋杩愯浜嗗寘鍚柇鐐圭殑宸ョ▼鏃讹紝搴旂敤绋嬪簭灏嗘殏鍋滃湪鏈変竴涓粍鑹茬殑绠ご鎸囧悜鐨勬柇鐐瑰銆傛鏃讹紝寮鍙戠幆澧冪殑搴曢儴浼氭湁鍑犱釜鏂扮獥鍙c
(1).Breakpoints绐楀彛
Breakpoints绐楀彛浼氭樉绀哄嚭浣犳墍璁剧疆鐨勬墍鏈夋柇鐐癸紝鍔犱寒鏄剧ず鐨勬柇鐐瑰氨鏄綋鍓嶆柇鐐广傚湪杩欎釜绐楀彛涓彲浠ヨ缃柊鐨勬柇鐐癸紝鍒犻櫎鍘熸湁鐨勬柇鐐癸紝鏀瑰彉鏂偣鐨勫睘鎬с
(2).Debug鑿滃崟鐨勫浘鏍
鎴戜滑甯哥敤鐨勬槸涓嬮潰鍥涗釜鍥炬爣
鍒嗗埆鏄細Step into锛孲tep over锛孲tep out锛孯un to Cursor銆傚墠涓変釜鍥炬爣鎴戞兂澶у搴旇闈炲父娓呮锛岃繖閲屽氨涓嶅浠嬬粛浜嗐傜幇鍦ㄨ璇碦un to Cursor锛屾垜浠彲浠ュ皢鍏夋爣鏀惧湪褰撳墠鏂偣涔嬪悗鐨勪换浣曟兂瑕佹殏鍋滅▼搴忔墽琛岀殑鍦版柟锛岀劧鍚庡崟鍑昏鍥炬爣灏变細鎵ц褰撳墠鏂偣鍜屽厜鏍囨墍鍦ㄧ殑浣嶇疆涔嬮棿鐨勪唬鐮侊紝鍒颁簡鍏夋爣鎵瀹氫綅鐨勯偅琛屼唬鐮佹墽琛屽氨浼氬仠姝€傝闂鏁板櫒锛氬湪Breakpoints绐楀彛鍗曞嚮鏌愪釜鏂偣锛岀劧鍚庡湪Breakpoints绐楀彛涓崟鍑诲伐鍏锋爮涓婄殑Properties鍥炬爣銆備細鍑虹幇杩欎釜鏂偣鐨凚reakpoint Properties瀵硅瘽妗

鍗曞嚮Hit Count鎸夐挳璋冪敤Breakpoints Hit Count瀵硅瘽妗嗐

This setting determines how the breakpoint should behave when it is hit. You can choose to:
銉 Break always, regardless of hit count. This is the default option. This option has the least effect on program performance, since the debugger does not actually bother to compare the values.
銉 Break when the hit count is equal to the counter.
銉 Break when the hit count is a multiple of the counter.
銉 Break when the hit count is greater than or equal to the counter.
If you choose any option other than the default, an edit box appears next to the When the
breakpoint is hit list control. Edit the value in this edit box to set the hit count value. For
example, you might choose break when hit count is equal to and enter 12. This causes
execution to stop the 12th time the breakpoint is hit, not on any other hit.
Current hit count
This value shows the number of times the breakpoint has been hit. The debugger keeps track of this value, if you have chosen a setting other than the break always default for When the breakpoint is hit. You can open the Breakpoint Properties dialog box and choose Hit Count to view
the current hit count while your program is executing. If you want to break every time the breakpoint is hit, but you also want to keep track
of the hit count in the dialog box, choose break when the hit count is a multiple of and set the count to 1.
Reset hit count
This button resets the value shown for the Current hit count to 0.
涓婇潰鏄疢SDN缁欏嚭鐨勫叧浜嶣reakpoint Hit Count瀵硅瘽妗嗙殑鍐呭锛屼富瑕佹槸浠嬬粛绋嬪簭鍦ㄥ惊 鐜腑浣曟椂鏆傚仠銆傚崟鍑籅reakpoint Properties瀵硅瘽妗嗕腑鐨凜ondition...鎸夐挳寮瑰嚭 Breakpoint Condition瀵硅瘽妗嗭紝杩欐槸鐢ㄦ潵缁欐柇鐐硅缃竴涓壒瀹氱殑鏉′欢锛屼緥濡傚綋鍙橀噺 绛変簬鏌愬肩殑鏃跺欐柇鐐规墠浼氳捣浣滅敤锛屼篃鍙互鎸囧畾鍙橀噺鍊煎彂鐢熸敼鍙樻椂婵娲绘柇鐐广
(3).鍛戒护绐楀彛锛圕ommand Window锛
鍒╃敤鍛戒护绐楀彛锛屽彲浠ユ煡璇㈠苟璁剧疆鍙橀噺鐨勫兼潵鎺у埗绋嬪簭鐨勬墽琛屽拰杈撳嚭锛屼篃鍙互鍦ㄥ懡浠ょ獥鍙d腑缂栧啓寰堝灏忕殑浠g爜娈垫潵鏀瑰彉绋嬪簭鐨勮緭鍑恒傚綋绋嬪簭澶勪簬涓柇妯″紡鏃讹紝鍛戒护绐楀彛鍙厑璁歌緭鍏ヤ唬鐮併傝鎯虫煡璇㈡煇涓彉閲忕殑鍊硷紝鐢ㄩ棶鍙凤紙锛燂級鍔犲彉閲忓悕鐨勬柟寮忥紝鐒跺悗鎸夊洖杞︽煡鐪嬬粨鏋溿傛敼鍙樺彉閲忕殑鍊硷紝鍦ㄥ彉閲忓悕鍚庨潰鍔犵瓑鍙凤紙=锛夊悗闈㈡槸浣犳兂杈撳叆鐨勫叿浣撳笺
(4).鐩戣绐楀彛(WatchWindow)
鐩戣绐楀彛鍙互璁╀綘鍦ㄦ墽琛屼唬鐮佹椂鐩戣鍙橀噺鍜岃〃杈惧紡銆傛坊鍔犳垨鍒犻櫎鍙橀噺鎴栬〃杈惧紡锛岃鍒╃敤QuickWatch锛屽氨鏄偅涓被浼肩溂鐫涚殑鍥炬爣銆傛墦寮QuickWatch鍚庡紑濮婨xpression涓嬫媺鍒楄〃妗嗘槸绌虹殑锛屾垜浠彲浠ラ夋嫨杈撳叆涓涓彉閲忔垨琛ㄨ揪寮忋傚湪浣犵户缁皟璇曠▼搴忔椂锛屽彉閲忔垨琛ㄨ揪寮忎細鍦╓atchWindow涓樉绀哄嚭鏉ワ紝褰撶洃瑙嗙獥鍙d腑鍙橀噺鐨勫煎彉鎴愮孩鑹叉椂锛岃鍊煎氨鏄垰鍙戠敓浜嗘敼鍙樸備綘杩樺彲浠ユ墜鍔ㄦ敼鍙樿鍊硷紝鍙鍦ㄧ洃瑙嗙獥鍙d腑鐨刅alue鏍忚緭鍏ユ柊鐨勫煎氨琛屼簡銆
(5).灞閮ㄧ獥鍙(Locals)
瀹冨拰鐩戣绐楀彛鏈変簺鐩镐技锛屽畠鎵鏄剧ず鐨勬槸褰撳墠鍑芥暟鎴栬繃绋嬫墽琛屼腑鐨勬墍鏈夊彉閲忓拰瀵硅薄銆傚眬閮ㄧ獥鍙d篃鍙互璁╀綘鏀瑰彉鍙橀噺鎴栧璞$殑鍊硷紝鎵瑕侀伒寰殑瑙勫垯涓庝娇鐢ㄧ洃瑙嗙獥鍙g殑瑙勫垯鏄竴鏍风殑銆傚眬閮ㄧ獥鍙h鎯崇洃瑙嗕竴涓や釜鍙橀噺鎴栬〃杈惧紡灏变笉鏄偅涔堟湁鐢ㄤ簡锛岃繖鏄敤鐩戣绐楀彛姣旇緝濂姐
Visual Basic.NET涓殑閿欒澶勭悊銆
鍦╒isual Basic.NET涓紝閿欒鏈哄埗鏄熀浜庡紓甯歌繖涓蹇电殑锛屽紓甯稿彲琚滄姏鍑衡濅互寮曞彂閿欒锛屽苟涓斿湪澶勭悊閿欒鏄彲鎹曟崏寮傚父銆傚鏋滄病鏈夋彁渚涗换浣曠被鍨嬬殑閿欒澶勭悊锛屽綋閿欒鍙戠敓鏃讹紝鐢ㄦ埛浼氭帴鍙楀埌鍏充簬杩欎釜鏈鐞嗙殑寮傚父鐨勬秷鎭紝杩欎釜娑堟伅鏄敱CLR鎻愪緵鐨勶紝杩欎釜娑堟伅涓嶆槸鐢ㄦ埛鍙嬪ソ鐨勶紝鐢ㄦ埛涓嶈兘鐞嗚В銆
Visual Studio.NET鎻愪緵浜嗗湪鎵鏈夎瑷涓兘閫氱敤鐨勭粨鏋勫寲閿欒澶勭悊璇彞銆俈isual Studio.NET涓殑缁撴瀯鍖栭敊璇鐞嗘槸鐢═ry...Catch...
Finally鍧楁潵澶勭悊鐨勩傚湪Try鍧椾腑鎵ц鍙兘寮曞彂寮傚父鐨勪唬鐮侊紝鍦–atch鍧椾腑澶勭悊閿欒锛孎inally鍧楁绘槸鍦ㄦ渶鍚庤鎵ц锛屼竴鑸皢娓呴櫎浠g爜锛屼緥濡傚叧闂枃浠舵垨鑰呴噴鏀惧璞°傚鏋滃彂鐢熶簡涓涓笉鏄湪Catch鍧椾腑澶勭悊鐨勯敊璇紝CLR灏变細鏄剧ず鍑哄畠鐨勬爣鍑嗛敊璇秷鎭苟缁堟绋嬪簭銆
涓嬮潰鎴戜滑鏉ョ湅鐪婽ry...Catch...Finally鍧楃殑璇硶缁撴瀯銆
Try
trystatements
Catch exception As type When expression
catchstatements
Exit Try
Finally
finallystatements
End Try
Trystatements鍙樺厓
鐢ㄦ潵鎸囧畾灏嗚鎵ц鐨勫彲鑳藉紩璧烽敊璇殑璇彞銆
Exception鍙樺厓
鏄换浣曞彉閲忕殑鍚嶇О锛屽畠浼氬寘鍚姏鍑洪敊璇殑鍊
鍙夌殑type鍙樺厓
鎸囧畾寮傚父鎵灞炵殑绫昏繃婊ゅ櫒绫诲瀷銆傚鏋滄病鏈夋彁渚涜繖涓彉鍏冿紝Catch璇彞灏变細澶勭悊瀹氫箟鍦⊿ystem.Exception绫讳腑鐨勪换浣曞紓甯搞傚埄鐢ㄨ繖涓彉鍏冨彲浠ヨ浣犳寚瀹氫綘鎵瑕佹煡鎵剧殑寮傚父鐨勭被鍨嬶紝姣斿IOException銆
Expression鍙樺厓
鏄敤鏉ユ弿杩颁竴涓櫘閫氳繃婊ゅ櫒鐨勪换鎰忚〃杈惧紡锛岃繖涓繃婊ゅ櫒閫氬父鐢ㄤ互杩囨护鎸囧畾鐨勯敊璇紪鍙枫傝〃杈惧紡搴旇杩斿洖涓涓竷灏斿硷紝鍙湁褰撳间负True鏄墠浼氬鐞嗚繖涓紓甯搞傝繖鍦ㄤ綘鎯宠繃婊ょ敤浠ュ鐞嗘寚瀹氶敊璇殑寮傚父鏄潪甯告湁鐢ㄣ
Catchstatements鍙樺厓
鏄鐞嗗凡鍙戠敓閿欒鐨勮鍙ャ
Exit Try璇彞
鐢ㄤ簬鑴辩閿欒澶勭悊缁撴瀯锛屽苟鍦‥nd Try璇彞鍚庣户缁墽琛屼唬鐮併侲xit Try璇彞鍙兘鍦ㄤ綘涓嶆兂鎵цFinally鍧楀唴鐨勪唬鐮佹椂浣跨敤銆
Finallystatements鍙樺厓
鏄湪涓婇潰鐨勫鐞嗛兘宸插彂鐢熷悗鎵鎵ц鐨勮鍙ャ
浣犲彲浠ヨ缃涓狢atch鍧楋紝杩欐牱鍒╃敤澶氫釜Catch鍧楀拰鍚屼竴涓猅ry鍧楄仈绯伙紝鍙互妫娴嬪涓敊璇
涓嬮潰鏄竴涓敊璇鐞嗙殑渚嬪瓙锛
Function GetStringsFromFile(ByVal FileName As String) As Collection
Dim Strings As New Collection
Dim Stream As System.IO.StreamReader = System.IO.File.OpenText(FileName) 'Open the file.
Try
While True ' Loop terminates with an EndOfStreamException
' error when end of stream is reached.
Strings.Add(Stream.ReadLine())
End While
Catch eos As System.IO.EndOfStreamException
' No action is necessary; end of stream has been reached.
Catch IOExcep As System.IO.IOException
' Some kind of error occurred. Report error and clear collection.
MsgBox(IOExcep.Message)
Strings = Nothing
Finally
Stream.Close() ' Close the file.
End Try
Return Strings
End Function
鎹曟崏鍦ㄨ鍙栨枃浠舵椂鍙兘鍑虹幇鐨処/O娴侀敊璇
涓婇潰鏄疺isual Studio.NET涓叧浜庨敊璇皟璇曞拰澶勭悊鐨勪竴浜涙祬鏄剧殑鐭ヨ瘑锛屼綘瀵瑰彂鐢熺殑閿欒绫诲瀷瓒婄啛鎮夛紝灏辫兘缂栧啓鍑烘洿澶嶆潅鏇存湁鏁堢殑閿欒澶勭悊绋嬪簭锛屽鍐欑Н绱粡楠屾槸鏈閲嶈鐨




发表于 2009-1-5 19:48
| 











