与文件路径相关操作

与文件路径相关的操作

(1)判断给定路径是否是绝对路径

例如d:\bin和E:是绝对路径,而..\temp 和 test\ccc 不是绝对路径

Java代码  

  1. public static final String OSNAME = System.getProperty("os.name");  
  2. public static boolean isWindows = false;  
  3.     public static boolean isHP_UX = false;  
  4.     public static boolean isSolaris = false;  
  5.     public static boolean isOS32bit = true;  
  6. static {  
  7.         if (SystemHWUtil.OSNAME.toLowerCase().contains("window")) {  
  8.             isWindows = true;  
  9.         }  
  10.         if (SystemHWUtil.OSNAME.toLowerCase().contains("hp-ux")) {  
  11.             isHP_UX = true;  
  12.         }  
  13.         if (SystemHWUtil.OSNAME.toLowerCase().contains("Solaris")) {  
  14.             isSolaris = true;  
  15.         }  
  16.         if (SystemHWUtil.OSARCH.contains("64")) {  
  17.             isOS32bit = false;  
  18.         }  
  19.     }  
  20.   
  21. /*** 
  22.      * Determine whether it is an absolute path. 
  23.      *  
  24.      * @param input 
  25.      * @return 
  26.      */  
  27.     public static boolean isAbsolutePath(String input) {  
  28.         if (ValueWidget.isNullOrEmpty(input)) {  
  29.             throw new RuntimeException("can not be null");  
  30.         }  
  31.         if (isWindows) {  
  32.             return input.matches("^[a-zA-Z]:\\\\?.*");//"^[a-zA-Z]:\\\\.*"  
  33.         } else {  
  34.             return input.matches("^/.*");  
  35.         }  
  36.     }  

 测试代码:

Java代码  

  1. @Test  
  2.     public void test_isAbsolutePath(){  
  3.         String path="d:\\bin";  
  4.         System.out.println(SystemHWUtil.isAbsolutePath(path));  
  5.     }  

 执行结果:true

 

 

(2)打开指定路径

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.                 // System.out.println("is linux");  
  27.                 runtime.exec("nautilus " + file.getAbsolutePath());  
  28.             } else {  
  29.                 runtime.exec("cmd /c start explorer " + file.getAbsolutePath());  
  30.             }  
  31.         } catch (IOException ex) {  
  32.             ex.printStackTrace();  
  33.         } finally {  
  34.             if (null != runtime) {  
  35.                 runtime.runFinalization();  
  36.             }  
  37.         }  
  38.     }  
  39.   
  40.     /*** 
  41.      *  
  42.      * @param filePath 
  43.      *            : only regular file 
  44.      */  
  45.     public static boolean open_file(Object folderObj) {  
  46.         if (ValueWidget.isNullOrEmpty(folderObj)) {  
  47.             return false;  
  48.         }  
  49.         File file = null;  
  50.         if (folderObj instanceof JTextField) {  
  51.             JTextField tf = (JTextField) folderObj;  
  52.             file = new File(tf.getText());  
  53.         } else if (folderObj instanceof String) {  
  54.             file = new File((String) folderObj);  
  55.         } else {  
  56.             file = (File) folderObj;  
  57.         }  
  58.         if (!file.exists()) {  
  59.             return false;  
  60.         }  
  61.         Runtime runtime = null;  
  62.         try {  
  63.             runtime = Runtime.getRuntime();  
  64.             if (!SystemHWUtil.isWindows) {  
  65.                 // System.out.println("is linux");  
  66.                 runtime.exec("nautilus " + file.getAbsolutePath());  
  67.             } else {  
  68.                 runtime.exec("cmd /c start explorer /select,/e, "  
  69.                         + file.getAbsolutePath());  
  70.             }  
  71.         } catch (IOException ex) {  
  72.             ex.printStackTrace();  
  73.             return false;  
  74.         } finally {  
  75.             if (null != runtime) {  
  76.                 runtime.runFinalization();  
  77.             }  
  78.         }  
  79.         return true;  
  80.     }  

 

见附件中类com.io.hw.file.util.FileUtils

时间: 2024-08-01 18:01:24

与文件路径相关操作的相关文章

浅析C#中文件路径的操作_C#教程

在程序中对文件操作是非常常见的,而对文件的操作则不可避免的需要文件的路径,并对文件的路径进行一系列的操作,例如:判断已知的路径是一个目录还是一个文件,路劲是一个文件则该文件的名称是什么,文件的扩展名名是什么等等.在C#中并并没有将文件的路径抽象为一个类,用来表示文件路径就是一个普通的字符串.对文件路径的操作例如,要获取文件名称,可以通过截取字符串或者使用正则表达式来取得. 其实,在.NET类库中,有一个专门的功能类System.IO.Path,对表示文件或在目录路径的string进行操作.下面介

Python文件夹与文件的相关操作(推荐)_python

最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模块, 导入的方法是: import os 一.取得当前目录 s = os.getcwd() # s 中保存的是当前目录(即文件夹) 比如运行abc.py,那么输入该命令就会返回abc所在的文件夹位置. 举个简单例子,我们将abc.py放入A文件夹.并且希望不管将A文件夹放在硬盘的哪个位置,都可以在A

C# 文件流相关操作

二进制转换成图片: MemoryStream ms = new MemoryStream(bytes); ms.Position = 0; Image img = Image.FromStream(ms); ms.Close(); this.pictureBox1.Image C#中byte[]与string的转换代码: System.Text.UnicodeEncoding converter = new System.Text.UnicodeEncoding(); byte[] inputB

ASP.NET对txt文件相关操作(读取、写入、保存)_实用技巧

ASP.NET读取txt文件(记事本)内容: using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using S

python中os操作文件及文件路径实例汇总_python

本文实例讲述了python中os操作文件及文件路径的方法.分享给大家供大家参考.具体分析如下: python获取文件上一级目录:取文件所在目录的上一级目录 复制代码 代码如下: os.path.abspath(os.path.join(os.path.dirname('settings.py'),os.path.pardir)) os.path.pardir是父目录,os.path.abspath是绝对路径 举例具体看一下输出: 复制代码 代码如下: print os.path.dirname(

详解Java的文件与目录管理以及输入输出相关操作_java

Java中文件与目录管理 目录是管理文件的特殊机制,同类文件保存在同一个目录下不仅可以简化文件管理,而且还可以提高工作效率.Java 语言在 java.io 包中定义了一个 File 类专门用来管理磁盘文件和目录. 每个 File 类对象表示一个磁盘文件或目录,其对象属性中包含了文件或目录的相关信息.通过调用 File 类提供的各种方法,能够创建.删除.重名名文件.判断文件的读写权限以及是否存在,设置和查询文件的最近修改时间等.不同操作系统具有不同的文件系统组织方式,通过使用 File 类对象,

iOS 文件及字符串相关操作汇总 - 持续更新中......

iOS 文件及字符串相关操作汇总 - 持续更新中...... 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 1.获取应用包中文件的绝对路径: NSString *absoluteFileNam

CI框架中redis缓存相关操作文件示例代码_php实例

本文实例讲述了CI框架中redis缓存相关操作文件.分享给大家供大家参考,具体如下: redis缓存类文件位置: 'ci\system\libraries\Cache\drivers\Cache_redis.php' <?php /** * CodeIgniter * * An open source application development framework for PHP 5.2.4 or newer * * NOTICE OF LICENSE * * Licensed under

PHP获取音频文件的相关信息

  这篇文章主要介绍了PHP获取音频文件的相关信息的相关资料,非常的实用,有需要的小伙伴可以参考下. 项目需求:现在有一个音频文件上传的功能,在上传后PHP需要获取这个音频文件的相关信息,例如:时长等,由于这个文件是放在买的空间上的,没有像ffmpeg这样的扩展来处理,那么PHP能不能获取到这些信息? 下面是之前在项目中用到的一个用PHP进行音频文件头部信息的读取与写入操作的实现,主要针对 WMA 和 MP3 两种格式,供参考. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 1