Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法在GNU/Linux上使用File.renameTo()更改文件名_Java_Linux_File - Fatal编程技术网

Java 无法在GNU/Linux上使用File.renameTo()更改文件名

Java 无法在GNU/Linux上使用File.renameTo()更改文件名,java,linux,file,Java,Linux,File,我在编码时遇到了一个奇怪的问题。我必须将名为börsenzeitung\u komplett的文件重命名为processed\u börsenzeitung\u komplett 我正在使用Java API中的currentFile.renameTo(newFile),它在Windows系统上运行良好,但在GNU/Linux系统上返回false。您应该检查输出目录的权限(并选择使用更改),或者如果目标文件已经存在(我假设您没有使用任何SecurityManager) 正如上面所说: 重命名由此抽

我在编码时遇到了一个奇怪的问题。我必须将名为
börsenzeitung\u komplett
的文件重命名为
processed\u börsenzeitung\u komplett


我正在使用Java API中的
currentFile.renameTo(newFile)
,它在Windows系统上运行良好,但在GNU/Linux系统上返回false。

您应该检查输出目录的权限(并选择使用更改),或者如果目标文件已经存在(我假设您没有使用任何
SecurityManager

正如上面所说:

重命名由此抽象路径名表示的文件

此方法行为的许多方面都是固有的 平台相关:重命名操作可能无法移动 从一个文件系统到另一个文件系统,它可能不是原子的,并且它是原子的 如果文件的目标抽象路径名为 已存在。应始终检查返回值以确保 重命名操作已成功

请注意,Files类定义了移动或重命名文件的move方法 以独立于平台的方式归档


您应该检查输出目录的权限(并选择使用)或者目标文件是否已经存在(我假设您没有使用任何
SecurityManager

正如上面所说:

重命名由此抽象路径名表示的文件

此方法行为的许多方面都是固有的 平台相关:重命名操作可能无法移动 从一个文件系统到另一个文件系统,它可能不是原子的,并且它是原子的 如果文件的目标抽象路径名为 已存在。应始终检查返回值以确保 重命名操作已成功

请注意,Files类定义了移动或重命名文件的move方法 以独立于平台的方式归档


您是否检查了源文件和目标目录的读/写权限?可能运行java应用程序的用户没有重命名该文件的权限。请尝试:chmod 777 filename。如果您有一些解决方案,请与我共享。我现在遇到了相同的问题。您的问题为+1:)是否检查了源文件和目标目录的读/写权限?可能运行java应用程序的用户没有重命名该文件的权限。尝试:chmod777文件名。如果您有一些解决方案,请与我分享。我现在也有同样的问题。你得到了+1:)文件“börsenzeitung_komplett”中特殊字符的问题。这个字符,其余所有其他文件都被重命名。我正在使用linux系统,我是否需要做一些设置以支持此类字符?你能从GNU/linux终端重命名此文件吗?文件“börsenzeitung_komplett”中的特殊字符问题是此字符,其余所有其他文件都被重命名。我使用的是linux系统,我是否需要做一些设置来支持这些字符?你能从GNU/linux终端重命名这个文件吗?