以修改“C:\abc.txt"为bat为例。
公司主营业务:网站建设、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出登封免费做网站回馈大家。
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
无法直接获取,但可以采用变通的方法,思路:
把word转换成二进制流前先用变量把拓展名和后缀获取到(例如 var filename = “xxxx.doc”)
定义一个int变量记录二进制流(word)的长度。并将该变量转成4字节的btye[]数组
将第一步中获取到的文件名字符串转成byte[]数组。
将字节按照: word文件byte[]+文件名byte[]+word文件长度byte[](第二步)按照顺序拼接成一个byte[]数组
还原:
1.首先读取总byte[]的后4个字节,以确定文件二进制流的有效长度(假设为L).
2.将索引0至L 之间的字节数组按常规方式恢复成流.
3.将索引L至N-4之间的字节数组还原成字符串,即可获得原文件名.
然后,爱咋咋地~~~~
创建一个文本文件,在其中输入:
dir *.txt /s /n 目录.txt
保存为XX.bat
然后双击运行即可在该文件夹下产生一个目录.txt的文件,里面有你要的内容,不用VB.net
这个问题可以用注册表解决。
Function getOpenCommand(fileExt As String) as String
Dim fileType as String, openCommand as String
fileExt = "." + fileExt
'取得文件扩展名在注册表里的文件类型名称
'比如.zip的类型名称一般是zipfile
fileType = 读取注册表的classes_root下的子键(fileExt)的默认键值
'取得打开这种文件的程序
openCommand = 读取注册表的classes_root下的子键(fileType + "\shell\open\command")的默认键值
Return getOpenCommand
End Function
读取注册表的HKEY_CLASSES_ROOT下的子键的默认键值的方法可以在网上搜索到。
这样getOpenCommand("doc")就可以得到一个字符串(包括引号):
"C:\Program Files\Word\word.exe" "%1"
这里只需要用Spilt函数把C:\Program Files\Word\word.exe分离出来就好了