Dim my_path() As String = System.IO.Directory.GetFiles("d:\", "文件名", IO.SearchOption.AllDirectories)
创新互联建站作为成都网站建设公司,专注成都网站建设、网站设计,有关成都企业网站建设方案、改版、费用等问题,行业涉及雨棚定制等多个领域,已为上千家企业服务,得到了客户的尊重与认可。
因为有可能在多个地方,所以进行了全盘搜索,歌曲的所有地址路径在数组my_path中
你好,请使用System.IO.Directory.EnumerateFiles()方法
Dim XLS文件列表 As IEnumerable(Of string)
Dim XLSX文件列表 As IEnumerable(Of string)
Dim path As String = "D:\File\"
XLS文件列表 = Directory.EnumerateFiles(path, "*.xls", SearchOption.TopDirectoryOnly)
XLSX文件列表 = Directory.EnumerateFiles(path, "*.xlsx", SearchOption.TopDirectoryOnly)
我没有设置关联,只是把文件拖到程序文件上打开,应该是一样的。
主要是看程序启动时的命令行参数My.Application.CommandLineArgs,里面包括要打开的文件路径。
在Sub Main 或者 启动窗口的Load事件里添加代码
If My.Application.CommandLineArgs.Count 0 AndAlso My.Computer.FileSystem.FileExists(My.Application.CommandLineArgs(0)) Then‘参数不为空且文件存在
Dim s As New IO.StreamReader(My.Application.CommandLineArgs(0))
MsgBox(s.ReadToEnd)
End If
你还可以处理更多的命令行参数。
关于命令行参数
下载,直接通过url读取文件,然后Response.OutputStream.Write()数据
下面提供个下载的静态方法,是C#的,供参考:
/// summary
/// 下载文件
/// /summary
/// param name="fileName"下载的文件名称(包括扩展名)/param
/// param name="filePath"下载文件的绝对路径/param
public static void DownFile(string fileName, string filePath)
{
//打开要下载的文件,并把该文件存放在FileStream中
System.IO.FileStream Reader = System.IO.File.OpenRead(filePath);
//文件传送的剩余字节数:初始值为文件的总大小
long Length = Reader.Length;
HttpContext.Current.Response.Buffer = false;
HttpContext.Current.Response.AddHeader("Connection", "Keep-Alive");
HttpContext.Current.Response.ContentType = "application/octet-stream";
HttpContext.Current.Response.Charset = "utf-8";
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode(fileName));
HttpContext.Current.Response.AddHeader("Content-Length", Length.ToString());
byte[] Buffer = new Byte[10000];//存放欲发送数据的缓冲区
int ByteToRead; //每次实际读取的字节数
while (Length 0)
{
//剩余字节数不为零,继续传送
if (HttpContext.Current.Response.IsClientConnected)
{
//客户端浏览器还打开着,继续传送
ByteToRead = Reader.Read(Buffer, 0, 10000); //往缓冲区读入数据
HttpContext.Current.Response.OutputStream.Write(Buffer, 0, ByteToRead);
//把缓冲区的数据写入客户端浏览器
HttpContext.Current.Response.Flush(); //立即写入客户端
Length -= ByteToRead;//剩余字节数减少 }
else
{
//客户端浏览器已经断开,阻止继续循环
Length = -1;
}
} //关闭该文件
Reader.Close();
}
QQ:121一九五五121