在Windows和Linux操作系统下访问Java应用程序中的外部文件

请问我面临以下问题:

在我的Java程序中,我正在访问一些文件,这些文件似乎是在Linux下以不同的方式在Windows下访问的。 例如,如果我想要访问以下文件在同一个文件夹作为项目,我会写下面的内容

在Linux下: File Operations_File = new File("Data/Operations.txt");

在Windows下: File Operations_File = new File("Data\Operations.txt");

我将需要一个在所有操作系统(或者至less那两个)下工作的标准方法。 由于我的代码的两个版本编码并不完美。

像select()或poll()这样的系统调用是如何工作的?

意外的行为与PerlIO ::编码

fwrite()替代32位系统上的大文件

在fork()'ed过程中的IOstream

如何在Windows XP中写入I / O端口? (Delphi7的)

我正在操作的两个操作系统是:Linux Mint 9和Windows XP。 我在整个项目中都使用了NetBeans 6.9.1。

非常感谢您的帮助!

在C ++中的缓冲区大小

将stderr和stdout写入一个文件,但也要将stderr写入一个单独的文件

关于node.js内部asynchronousI / O机制的困惑

“系统调用参数打开(模式)包含未初始化的字节(S)”在打开系统调用

复制稀疏文件

File.separator正是这个。

文件f =新文件(“数据”+ File.separator +“Operations.txt”);

不要与File.pathSeparator混淆,这是用来分隔彼此的路径。 例如:

在/ usr / local / lib目录:/ usr / lib中:在/ var / lib中

在上面的例子中,:是路径分隔符(windows使用;用于路径分隔符)。

您也可以创建一个表示目录的File ,另一个File表示该目录中的某些内容,如下所示:

File dataDir = new File("Data"); File operationsFile = new File(dataDir,"Operations.txt");

你也可以跳过目录下的File ,也可以这样做:

File operationsFile = new File("Data","Operations.txt");

在Windows下,打印出operationsFile按预期提供DataOperations.txt 。

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...