`
ilovejavaforever
  • 浏览: 164823 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Windows / Linux下,文件读写

阅读更多

     毋庸置疑,java本身是跨平台的。但是很多时候由于长期在windows上开发,养成了不好的编程习惯。因为操作系统的不同,会在很多细小的地方产生bug,深受其害。

     最恶心的问题就是,在windows平台,文件都是以“\”分割,例如:"D:\test\....",而在Linux中,文件都是以“/”分割的,例如:"home/admin/...."。如果开发时候,对文件分割符写死的话,必然只能兼容一种操作系统。要想同时兼容多种操作系统,就不能写死。写法应该用File.separator分隔符连接,用StringBuffer连接。例如:

 

StringBuffer sb = new StringBuffer();
sb.append("home").append(File.separator).append("admin");
File file = new File(sb.toString());

     又有一个新问题,如果程序会把某个文件路径持久化到数据库,那么数据库中存储的char必然是某种操作系统的文件路径格式,

在数据库中必然是写死的,不同的操作系统读取出来进行文件操作,必然再次异常。这样,只能写一个转化方法解决这问题:

 

public static String parseFilePath(String fileName,String filePath){
      StringBuffer filePath_unit = new StringBuffer();
      String path = filePath_unit.append(filePath).append(File.separator).
            append(fileName).toString();
      return path.replace("/", File.separator).replace("\\",
            File.separator);
}

    深受其害啊~~特撰文讲解。

1
1
分享到:
评论

相关推荐

    Linux Windows C++读写ini文件

    下面我们将详细介绍在Linux和Windows环境下,如何使用C++来处理ini文件。 **1. ini文件结构** ini文件通常由节(section)和键值对(key-value pairs)组成。每个节以方括号`[]`包裹,键值对则以等号`=`分隔,例如...

    linux/Win32下读写ini文件的c++类

    文件读写实现 在Linux下,我们可以使用`fstream`库来操作文件,而在Windows下,可能需要使用`GetPrivateProfileString`和`WritePrivateProfileString` API。为了实现跨平台,我们可以使用条件编译指令`#ifdef`来...

    windows/linux读写锁简单改进版本

    在Windows和Linux操作系统中,都有内置的读写锁实现,但它们可能存在效率问题,尤其是在特定条件下。 在Windows系统中,我们可以使用`SRWLock`(Slim Reader/Writer Lock)API,这是一个轻量级的读写锁实现。`...

    windows和linux读写锁C++实现

    本话题将详细探讨在Windows和Linux环境下,如何使用C++来实现读写锁。 首先,我们来看读写锁的基本概念。读写锁通常由两个部分组成:读锁和写锁。读锁允许多个线程同时读取数据,而写锁则确保在写操作进行时没有...

    linux下读写ini配置文件(与windows API一致)

    总的来说,Linux下的`.ini`文件处理虽然没有像Windows那样直接的API支持,但通过自定义的函数或类可以实现相同的功能,实现读写配置文件的需求。`inifile.cpp`和`inifile.h`就是这样的实现,它们提供了与Windows API...

    Linux读写配置文件

    这篇主要讲解如何使用C++在Linux环境下实现类似Windows的配置文件读写功能,支持以`#`开头的注释,并能在跨平台的情况下进行编译。 首先,配置文件通常是文本文件,用于存储应用程序或服务的参数和设置。在Windows...

    在Windows下轻松读写Linux分区.pdf

    《在Windows下轻松读写Linux分区》这篇文档主要聚焦于如何在Windows环境下访问和操作Linux文件系统,这对于那些同时使用Windows和Linux双系统的用户来说,是一个极具实用价值的主题。Linux分区通常采用EXT2、EXT3、...

    Linux / Mac / Windows下文件监控软件

    标题提到的"Linux / Mac / Windows下文件监控软件"是指跨平台的工具,它们能够帮助用户在不同操作系统上监视文件或目录的改动。下面我们将详细探讨这些工具及其应用。 首先,让我们关注一下"监控"这个标签。文件...

    NetCDF格式在Windows及Linux平台下的读写.pdf

    在 Windows 和 Linux 平台下,使用 C 语言和 Fortran 语言编写的读写 NetCDF 格式文件的程序的读写速度和精度存在差异。在 Windows 平台下,使用 C 语言编写的程序的读写速度和精度略高于使用 Fortran 语言编写的...

    C++实现ini文件读写(Linux和windows平台均可运行)

    通过以上步骤,你可以在C++中实现跨平台的ini文件读写功能,无论是在Windows还是Linux环境下。这不仅锻炼了文件操作和字符串处理技巧,还涉及到平台兼容性的设计,是提升C++编程能力的一个好实践。

    linux/Win32下读写ini文件的c++类 动态库 C语言可调用

    然而,这个压缩包提供的资源允许你在Linux和Win32环境下处理INI文件,不仅限于Windows。这是一份用C++编写的类库,它提供了动态库的形式,使得C语言也可以调用这些功能。 首先,让我们深入了解一下INI文件。INI文件...

    Linux与Windows双系统硬盘资源互访

    总结起来,Linux与Windows双系统间的硬盘资源互访主要依赖于Linux对Windows文件系统的良好支持以及第三方软件提供的Windows对Linux文件系统的访问能力。正确配置挂载点和使用适当的工具,可以方便地在两个系统间共享...

    Ubuntu Linux下安全读写NTFS分区格式文件

    标题中的“Ubuntu Linux下安全读写NTFS分区格式文件”是指在Ubuntu Linux操作系统中,如何安全地对使用NTFS文件系统的硬盘分区进行读取和写入操作。NTFS(New Technology File System)是Windows操作系统主要使用的...

    双系统下从Windows访问Linux分区的三种方法.pdf

    本文将详细介绍三种在Windows下访问Linux分区(特别是ext2或ext3文件系统)的方法,并解释每种方法的工作原理、优缺点以及具体操作步骤。 #### 一、Explore2fs **Explore2fs** 是一款免费软件,能够帮助用户在...

    windows下查看识别linux硬盘工具

    标题中的“Windows下查看识别Linux硬盘工具”指的是在Windows操作系统中能够读取和访问Linux文件系统的软件或驱动程序。在Windows环境下,由于默认不支持Linux的EXT2、EXT3、EXT4等文件系统,因此无法直接打开或读取...

    linux下QT程序读写配置文件小程序

    这个例子中,我们将深入理解如何利用`QSettings`在Linux下创建一个简单的QT程序来读写配置文件。 首先,`QSettings`类是Qt库中的一个关键组件,它允许开发者以一种跨平台的方式处理配置文件。无论是Windows的注册表...

    Linux系统下读写ini文件类

    在linux系统下完成类似windows读写ini文件的功能,封装了类似WritePrivateProfileString、GetPrivateProfileString、SetPrivateProfileInt、GetPrivateProfileInt等功能接口。

    RedHat Linux自动挂载Windows文件系统.pdf

    RedHat Linux 自动挂载 Windows 文件系统可以解决 Linux 下对非 Linux 分区格式的文件系统的访问问题,提高了系统的可用性和灵活性。通过修改 fstab 文件或 rc.local 文件可以实现自动挂载 Windows 文件系统。

    Windows读写Ext2/Ext3/Ext4文件系统4

    支持Ext2/Ext3/Ext4, HFS 和 ReiserFS,... It means that it is possible to access absolutely any file on a Linux disk from Windows. The program can create and open disk images. Linux Reader is 100% FREE.

    Windows读写Ext2/Ext3/Ext4文件系统

    可以读写Ext2,以Ext2方式挂载Ext3文件系统(不支持Ext3日志),不支持中文! It provides Windows NT4.0/2000/XP/2003/Vista/2008 with full access to Linux Ext2 volumes (read access andwrite access). This ...

Global site tag (gtag.js) - Google Analytics