Java程序打开浏览器和文件夹

Java程序打开浏览器和文件夹

(1)打开网址

Java代码  

  1. //启用系统默认浏览器来打开网址。  
  2.         try {  
  3.             URI uri = new URI("file:///"+fileFullPath.replaceAll("\\\\", "/"));  
  4.             Desktop.getDesktop().browse(uri);  
  5.         } catch (URISyntaxException e2) {  
  6.             e2.printStackTrace();  
  7. //            GUIUtil23.errorDialog(e2);  
  8.             ToastMessage.toast(e2.getMessage(),3000,Color.red);  
  9.         } catch (IOException e2) {  
  10.             e2.printStackTrace();  
  11. //            GUIUtil23.errorDialog(e2);  
  12.             ToastMessage.toast(e2.getMessage(),3000,Color.red);  
  13.         }  

 

 

(2)打开文件所在文件夹

Java代码  

  1. String pathStr=this.tf.getText();  
  2.             if(!ValueWidget.isNullOrEmpty(pathStr)){  
  3.                 FileUtils.open_directory(SystemHWUtil.getParentDir(pathStr));  
  4.             }  

FileUtils.open_directory实现体为:

Java代码  

  1. /*** 
  2.      *  
  3.      * @param folder 
  4.      *            : directory 
  5.      */  
  6.     public static void open_directory(Object folderObj) {  
  7.         if (ValueWidget.isNullOrEmpty(folderObj)) {  
  8.             return;  
  9.         }  
  10.         File file = null;  
  11.         /*if (folderObj instanceof JTextField) { 
  12.             JTextField tf = (JTextField) folderObj; 
  13.             file = new File(tf.getText()); 
  14.         } else */if (folderObj instanceof String) {  
  15.             file = new File((String) folderObj);  
  16.         } else {  
  17.             file = (File) folderObj;  
  18.         }  
  19.         if (!file.exists()) {  
  20.             return;  
  21.         }  
  22.         Runtime runtime = null;  
  23.         try {  
  24.             runtime = Runtime.getRuntime();  
  25.             if (SystemHWUtil.isWindows) {  
  26.                 runtime.exec("cmd /c start explorer " + file.getAbsolutePath());  
  27.             } else {  
  28.                 runtime.exec("nautilus " + file.getAbsolutePath());  
  29.   
  30.             }  
  31.         } catch (IOException ex) {  
  32.             ex.printStackTrace();  
  33.         } finally {  
  34.             if (null != runtime) {  
  35.                 runtime.runFinalization();  
  36.             }  
  37.         }  
  38.     }  

 

 

 

(3)使用notepad打开txt文件

 

Java代码  

  1. final String pathStr=this.tf.getText();  
  2.             if(!ValueWidget.isNullOrEmpty(pathStr)){  
  3.                 new Thread(new Runnable() {  
  4.                     @Override  
  5.                     public void run() {  
  6.                         String result;  
  7.                         try {  
  8.                             result = CMDUtil.execute(new String[]{"cmd", "/c", "notepad", pathStr}, null, null);  
  9.                             System.out.println(result);  
  10.                         } catch (IOException ex) {  
  11.                             ex.printStackTrace();  
  12.                         }  
  13.                     }  
  14.                 }).start();  
  15.             }  

 CMDUtil.execute实现如下:

 

 

Java代码  

  1. /*** 
  2.      *  
  3.      * @param command 
  4.      * @param cmdFolder : 命令的路径 
  5.      * @param charset 
  6.      * @return 
  7.      * @throws IOException 
  8.      */  
  9.     public static String execute(String[]command,String cmdFolder,String charset) throws IOException{  
  10.          BufferedReader reader = null;  
  11.          Process p = null;  
  12.          String errorInputStr = null;  
  13.             try  
  14.             {  
  15. //              String commandFolder=;  
  16.                 if(ValueWidget.isNullOrEmpty(charset)){  
  17.                     charset=SystemHWUtil.CURR_ENCODING;  
  18.                 }  
  19.                 if(ValueWidget.isNullOrEmpty(cmdFolder)){  
  20.                     p = Runtime.getRuntime().exec(command);  
  21.                 }else{  
  22.                     File cmdFolder2=null;  
  23.                     if(!ValueWidget.isNullOrEmpty(cmdFolder)){  
  24.                         cmdFolder2=new File(cmdFolder/*命令的所在目录*/);  
  25.                         p = Runtime.getRuntime().exec(command, null,cmdFolder2/*命令的路径*/);//)  
  26.                     }else{  
  27.                         p = Runtime.getRuntime().exec(command, null);//)  
  28.                     }  
  29.                       
  30.                       
  31.                 }  
  32.                 reader = new BufferedReader(new InputStreamReader(p  
  33.                         .getInputStream(),charset));  
  34.                 errorInputStr=FileUtils.getFullContent4(p.getErrorStream(),charset);  
  35.                 if(!ValueWidget.isNullOrEmpty(errorInputStr)){  
  36.                     System.out.println("error:"+errorInputStr);  
  37.                 }  
  38.                 StringBuilder sb = new StringBuilder();  
  39.                 String readedLine = null;  
  40.                 try  
  41.                 {  
  42.                     while ((readedLine = reader.readLine()) != null)  
  43.                     {  
  44.                         sb.append(readedLine);  
  45.                         sb.append("\r\n");  
  46.                     }  
  47.                 }  
  48.                 catch (IOException e)  
  49.                 {  
  50.                     e.printStackTrace();  
  51.                 }  
  52.                 finally  
  53.                 {  
  54.                     try  
  55.                     {  
  56.                         reader.close();  
  57.                         p.destroy();  
  58.                     }  
  59.                     catch (IOException e)  
  60.                     {  
  61.                         e.printStackTrace();  
  62.                     }  
  63.                 }  
  64.                 String content = sb.toString();  
  65.                 System.out.println(content);  
  66.             }  
  67.             catch (IOException e)  
  68.             {  
  69.                 e.printStackTrace();  
  70.                 throw e;  
  71.             }  
  72.             return errorInputStr;  
  73.     }  

 

时间: 2024-12-01 07:11:15

Java程序打开浏览器和文件夹的相关文章

windows-如何用Java扫描Windows下的文件夹?

问题描述 如何用Java扫描Windows下的文件夹? 如何用Java扫描Windows下的文件夹以及文件夹下面的文件 解决方案 import java.io.File;/** * *自动扫描文件夹下的文件 *用途:自动扫描脚本输入路径,输出要执行的sql导入数据库: */public class OutSql { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method

asp.net中的文件上传控件能否打开一个固定文件夹然后再选择文件

问题描述 asp.net中的文件上传控件能否打开一个固定文件夹然后再选择文件asp.net中的文件上传控件能否打开一个固定文件夹然后再选择文件我现在要上传文件,但是在点击浏览的时候我想要打开一个指定的目录,然后在这个目录中选择文件..用什么方法能够实现呢?请各位大侠帮忙呀!!!!!!!!!??????????????????????????谢谢各位!!!!!!!! 解决方案 解决方案二:属于客户端程序,安全考虑的话怕不可行解决方案三:可以,将所选目录文件列出就行了,用常用的IO操作就能实现CSD

用命令行将Java程序打包为jar文件

如何把写好的Java程序打包为jar文件呢?有两种方式可以选择 1.命令行的方式: 打包 jar cf JAR文件名称 程序文件名称或者程序所在的文件夹 举例: jar cf MyApp.jar D:JavaProjectMyApp 查看一个jar文件的内容 jar tvf JAR文件名称 举例: jar tvf MyApp.jar 将一个jar文件解压缩 jar xf JAR文件名称 举例: jar xf MyApp.jar 往压缩包里面增加文件 jar xf JAR文件名称 添加的文件或者其

怎么用java显示ftp服务器上文件夹中的图片在jsp页面上?

问题描述 怎么用java显示ftp服务器上文件夹中的图片在jsp页面上? ftp在另一台windows上,访问jsp页面要读取并显示出ftp上的图片. ftp上的图片路径保存在数据库中,操作ftp的jar我选了apache的FtpClient. 现在的问题是,action获取到ftp上的文件后,是下载下来再读取成流输出到页面呢?还是直接从FTP获取成流输出到页面?如果有,求思路,最好有代码举例我不想ftp上的文件下载到部署环境上然后再输出到页面,想通过读取ftp的流直接显示到页面,页面关闭后流就

C#如何将数据写入当前程序安装目录某文件夹下

public static string GetXmlFullPath(string strPath) { string filePath = GetPhysicalPath(); if (filePath.IndexOf(":") > 0) { return filePath; } else { return null; } } //获取配置文件的物理路径 public static string GetPhysicalPath() { //获得当前程序运行的物理路径比如F:\

java实现读取、删除文件夹下的文件

  本文给大家分享的是java实现读取.删除文件夹下的文件,其中File.delete()用于删除"某个文件或者空目录"!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除,有需要的小伙伴可以参考下. java实现读取.删除文件夹下的文件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

Win8系统无法同时在新窗口中打开多个文件夹的解决方法

  同一个桌面中可以打开多个文件夹,这在win8系统中已不是什么值得惊讶的事了,因为这在XP系统中,是肯定能够实现的,大家也都习惯于同时打开多个文件夹,这在我们平时办公的时候使用的最多,在核对某一个报表时,都会需要用到另一个文件夹里信息,所以难免的多打开几个文件夹,这不是什么难题.但是win8的用户有遇到在同一个窗口下不能打开多个文件夹的情况,下面小编针对这个问题来给出解答. 方法一: 1.Win+R调出运行 ,输入"regedit"回车或确定打开注册表; 2.然后找到注册表这一项:H

如何在Win7里实现一个窗口打开多个文件夹的方法

  我们常常在使用电脑的时候都会发现,一些win7镜像用户在打开文件夹会发现我们不能同时在一个窗口下打开,用起来非常的不方便,遇到这样的情况该怎么办呢,其实只需要设置一下就可以了,我们来看看下列几个方法吧! 方法一: 1.首先我们在自己的电脑桌面打开我们的计算机图标,然后在窗口中找到我们的工具,然后在选择文件夹选项功能. 2.在打开了文件夹选项窗口后,我们在选中我们需要设置的在同一个窗口打开每个文件夹这个功能勾选,然后点击确认. 3.然后我们保存了以后就可以回到我们的桌面,然后在试试打开文件夹是

eclipse报错-JAVA程序编程成CLASS文件后能在CMD运行,但是无法运行ECLIPSE。

问题描述 JAVA程序编程成CLASS文件后能在CMD运行,但是无法运行ECLIPSE. JAVA程序编程成CLASS文件后能在CMD运行,但是无法运行ECLIPSE,报错 解决方案 具体是哪里错了,有截图吗 解决方案二: 直接将该程序的源代码复制到eclipse某项目的src下再运行该程序 解决方案三: http://jingyan.baidu.com/article/15622f247de105fdfcbea5c9.html 解决方案四: 是无法运行ECLIPSE还是代码在ECLIPSE上报