以修改“C:\abc.txt"為bat為例。
成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括額敏網(wǎng)站建設(shè)、額敏網(wǎng)站制作、額敏網(wǎng)頁(yè)制作以及額敏網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,額敏網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到額敏省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Myfile As String
Myfile = IO.Path.ChangeExtension("C:\abc.txt", ".bat")
Microsoft.VisualBasic.FileSystem.Rename("C:\abc.txt", Myfile)
End Sub
End Class
如沒(méi)有現(xiàn)存的辦法的話只能讀取注冊(cè)表,以txt文件為類:
HKEY_CLASSES_ROOT\.txt?? '在這個(gè)地址有個(gè)默認(rèn)屬性值是:txtfile
HKEY_CLASSES_ROOT\txtfile\shell\open\command?? '這里的默認(rèn)屬性值txtfile的關(guān)聯(lián)程序:%SystemRoot%\system32\NOTEPAD.EXE %1
我暫不了解vb.net讀注冊(cè)表函數(shù)(剛在學(xué)),以vbs為類:
Dim?WshShell
Set?WshShell?=?WScript.CreateObject("Wscript.Shell")
Dim?Ext
ext=?WshShell.RegRead?("HKEY_CLASSES_ROOT\.mp3\") '這里的擴(kuò)展名.mp3可以改成其它的看看
MsgBox?WshShell.RegRead?("HKEY_CLASSES_ROOT\"??ext??"\shell\open\command\")
樓主您好,這個(gè)拓展方法是為L(zhǎng)inQ服務(wù)的,用來(lái)在集合內(nèi)篩選數(shù)據(jù)
比如有一個(gè)List(Of Integer)
類型的scoreList對(duì)象,里面存有學(xué)生的考試成績(jī)。如果我要輸出
大于等于60分的成績(jī),可以這樣:
Dim r=(From s in scoreList Where s=60 Select s).ToList()
For Each e In r
Console.WriteLine(e)
Next
第一句實(shí)際編譯為對(duì)集合的Where等拓展方法的調(diào)用
由于漢語(yǔ)語(yǔ)言表述的所帶來(lái)的不易理解性,我們還是直接用代碼來(lái)解釋吧,如下的代碼片段:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static class StringExtentsion
{
public static string ToString(this string str)
{
return "Extentsion" + str;
}
}
class Program
{
static void Main(string[] args)
{
string str = "test";
Console.WriteLine(str.ToString()); // 輸出結(jié)果為: test,也就說(shuō)編譯器會(huì)優(yōu)先選用原有類的實(shí)例化方法,如果沒(méi)找到匹配方法再尋找擴(kuò)展方法
Console.Read();
}
}
由上述的代碼片段可以知:StringExtentsion類中擴(kuò)展方法ToString 和 String類的原有的ToString方法 對(duì)于客戶端代碼而言,它們的語(yǔ)法表象是
一樣的,但本質(zhì)上一個(gè)是StringExtentsion類的靜態(tài)方法,一個(gè)是String類的實(shí)例化方法。然而編譯運(yùn)行沒(méi)有產(chǎn)生錯(cuò)誤,更沒(méi)有產(chǎn)生警告。所以在
這種情況下很容“埋雷”,一不小心就會(huì)中招。有人也許會(huì)說(shuō):我注意一下不要和.NET類庫(kù)的方法重名就可以了。但是你能保證 .NET 6、甚至.NET 10
的方法名和你寫(xiě)的絕對(duì)不重名嗎?所以,擴(kuò)展方法存在著版本控制的問(wèn)題。