昨天发现System.Diagnostics.Process 一样的可以打开一个网页的,直接的输入网页的地址就好了

C# 打开本地文件示例
本文展示了如何使用 C# 的 System.Diagnostics.Process 类来打开本地计算机上的各种文件类型,例如网页文件和文本文件,并解释了代码的具体实现细节。

 

System.Diagnostics.Process p = new System.Diagnostics.Process();
        
//直接指定文件名,系统工程会自己找到打开这个文件的程序而打开这个文件,如Excel文件   
      p.StartInfo.FileName = "C:/Documents and Settings/wubo/桌面/wubo/default.aspx";   //example:@"D:人员信息.xls";   
       p.Start();   
System.Diagnostics.Process p = new System.Diagnostics.Process();
        
//直接指定文件名,系统工程会自己找到打开这个文件的程序而打开这个文件,如Excel文件   
      p.StartInfo.FileName = "C:/Documents and Settings/wubo/桌面/wubo/上网日志.txt";   //example:@"D:人员信息.xls";   
       p.Start();   
不过他们都是以默认的打开方式打开的
在 C# 中,使用 `System.Diagnostics.Process.Start` 方法可以启动外部进程或应用程序。该方法属于 `System.Diagnostics.Process` 类,提供了多种重载形式以满足不同的需求。以下是一些常见的使用场景和方法。 ### 启动默认浏览器并打开指定网页 可以使用 `Process.Start` 方法直接传递 URL 来启动默认浏览器并打开指定的网页。例如: ```csharp System.Diagnostics.Process.Start("http://zhidao.baidu.com"); ``` 如果系统中已经打开了浏览器窗口,该方法可能会在现有窗口中加载指定的 URL;如果没有打开浏览器,则会启动一个新的浏览器窗口并加载该 URL [^1]。 ### 指定应用程序和参数 如果需要启动特定的应用程序并传递参数,可以使用两个参数的重载形式。第一个参数是应用程序的路径,第二个参数是要传递给应用程序的命令行参数。例如,启动 Internet Explorer 并打开百度知道页面: ```csharp System.Diagnostics.Process.Start("iexplore.exe", "http://zhidao.baidu.com"); ``` ### 启动本地应用程序 除了启动浏览器,还可以使用 `Process.Start` 方法启动本地的应用程序。例如,启动注册表编辑器: ```csharp System.Diagnostics.Process.Start(@"C:\Windows\regedit.exe"); ``` ### 与外部进程交互 如果需要与外部进程进行交互,例如读取标准输入或写入标准输出,可以设置 `RedirectStandardInput` 和 `RedirectStandardOutput` 属性为 `true`。这将允许通过代码与外部进程进行通信。例如: ```csharp Process process = new Process(); process.StartInfo.FileName = "cmd.exe"; process.StartInfo.UseShellExecute = false; process.StartInfo.RedirectStandardInput = true; process.StartInfo.RedirectStandardOutput = true; process.Start(); // 向标准输入写入命令 process.StandardInput.WriteLine("dir"); process.StandardInput.Flush(); // 读取标准输出 string output = process.StandardOutput.ReadToEnd(); Console.WriteLine(output); process.WaitForExit(); ``` ### 设置进程启动选项 可以通过 `ProcessStartInfo` 类来设置更多启动选项,例如工作目录、窗口样式等。例如,启动记事本并将工作目录设置为 `C:\`: ```csharp ProcessStartInfo startInfo = new ProcessStartInfo("notepad.exe"); startInfo.WorkingDirectory = @"C:\"; startInfo.WindowStyle = ProcessWindowStyle.Minimized; System.Diagnostics.Process.Start(startInfo); ``` ### 处理异常 在启动进程时,可能会遇到文件未找到或其他异常情况。为了确保程序的健壮性,建议使用 `try-catch` 块来捕获并处理这些异常: ```csharp try { System.Diagnostics.Process.Start("nonexistentfile.exe"); } catch (Exception ex) { Console.WriteLine("无法启动进程: " + ex.Message); } ``` ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值