在windows中的文件分隔符是 \ 和 /都可以
但是在Linux中,文件分隔符只能是/
所以用了\\的程序在Linux下会出问题。
而File.separator是系统默认的文件分割符号,屏蔽了这些系统的区别。
用File.separator保证了在任何系统下不会出错。
在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常。
比如说要在temp目录下建立一个test.txt文件,在Windows下应该这么写:
File file1 = new File ("C:\tmp\test.txt");
在Linux下则是这样的:
File file2 = new File ("/tmp/test.txt");
如果要考虑跨平台,则最好是这么写:
File myFile = new File("C:" + File.separator + "tmp" + File.separator, "test.txt");
File类有几个类似separator的静态字段,都是与系统相关的,在编程时应尽量使用。
File.separator
分享到:
相关推荐
File file = new File("d:" + File.separator + "demo.doc"); if (!file.exists()) { try { file.createNewFile(); System.out.println(" 文件创建成功!"); } catch (IOException e) { e.printStackTrace();...
File file = new File("D:" + File.separator + "Floder" + File.separator + "example.txt"); boolean created = file.createNewFile(); if (created) { System.out.println("文件创建成功!"); } else { System....
tinkerDemo简单的实现了热补丁,具体的还没尝试,安装上baseApk(app-debug-1019-15-16-03)之后,将patch_signed_7zip放置到Environment.getExternalStorageDirectory()+File.separator;+ "FixPath"+File.separator...
把分降低吧 呵呵 boolean flag = false; File file = new File(path); if (!file.exists()) { ... if (path.endsWith(File.separator)) { temp = new File(path + tempList[i]); 部分代码显示
接着,案例2介绍了`File`类的两个常量:`File.separator`和`File.pathSeparator`。`File.separator`用于表示当前操作系统中的路径分隔符,例如在Windows上是`\`,在Linux或Mac上是`/`。`File.pathSeparator`则是用于...
2. 使用`File.separator`常量代替硬编码的路径分隔符,以保证在不同操作系统上的兼容性。 3. 对路径进行校验,使用`PathUtils`等工具类来确保路径的有效性。 4. 当涉及到文件操作时,确保使用的是文件名而不是完整的...
String path = File.separator + "home" + File.separator + "siu" + File.separator + "work" + File.separator + "demo.txt"; Person p1 = new Person("zhangsan",12); Person p2 = new Person("lisi",14);...
new File(System.getProperty("user.home")+File.separator+"Videos"); 其它: new File(System.getProperty("user.home")+File.separator+"Movies"); 我的电脑是C:\Documents and Settings\hz001\Videos这个路径 ...
String path=imgDir+File.separator; if(new File(path).exists()==false){ new File(path).mkdirs(); } ImageIO.write(image, "PNG", new File(imgDir+File.separator+i+".png")); }...
●file.separator:文件分隔符,Windows环境下为“",Unix环境下为“/”; ●user.home:用户主目录; ●java.home:Java实时运行环境的安装目录; ●java.ext.dirs:JDK的安装目录; ●os.name:操作...
File file = new File("d:" + File.separator + "demo.txt"); // 使用追加模式创建FileOutputStream OutputStream out = new FileOutputStream(file, true); String s = "追加内容"; byte[] b = s.getBytes(); ...
temp=new File(oldPath+File.separator+file[i]); } if(temp.isFile()){ FileInputStream input = new FileInputStream(temp); FileOutputStream output = new FileOutputStream(newPath + "/" + (temp....
File f = new File(outputDirectory + File.separator + zipEntry.getName()); f.createNewFile(); in = zipFile.getInputStream(zipEntry); out = new FileOutputStream(f); byte[] by = new byte...
**运行结果**:与案例1相同,但路径使用了`File.separator`常量。 ##### 案例3:删除一个文件 ```java import java.io.File; class Hello { public static void main(String[] args) { String fileName = "D:" ...
**如何配置Maven** Maven是一个强大的项目管理和构建工具,广泛应用于Java开发中。它简化了项目的构建过程,管理依赖关系,并提供了标准化的构建生命周期。下面是详细的Maven配置步骤: 1. **下载Maven** ...
FileOutputStream fos = new FileOutputStream(getFileName(file.getPath())+File.separator+newDir(file, entry.getName())); dest = new BufferedOutputStream(fos, BUFFER); while((count = zis...
File file = new File("D:" + File.separator + "cs.txt"); if (file.exists()) { file.delete(); System.out.println("文件存在且已经删除"); } else { System.out.println("文件不存在"); } } } ``` - ...
File file = new File(File.separator + "helo.txt"); System.out.println(file.createNewFile()); ``` 9. **递归操作**: 虽然示例中的递归方法`calc()`与文件I/O无关,但它展示了如何使用递归来解决问题。在...
String sourceDirTemp = sourceDir + File.separator + file[i].getName(); String targetDirTemp = targetDir + File.separator + file[i].getName(); copyDirectiory(sourceDirTemp, targetDirTemp); } } } ...
为了确保程序的可移植性,Java提供了`File.separator`常量来获取当前操作系统的路径分隔符,同时`File.pathSeparator`常量用来获取路径分隔符,如在Windows下用于分隔多个环境变量值时使用`;`。 示例代码如下: ``...