windows和linux之间的java语法文件差异
我正在尝试在linux中访问一个文件。我以前从Windows读取过该文件。我做了这样的事情:windows和linux之间的java语法文件差异,java,linux,eclipse,file,tomcat,Java,Linux,Eclipse,File,Tomcat,我正在尝试在linux中访问一个文件。我以前从Windows读取过该文件。我做了这样的事情: import java.io.File; public static File readFile = new File("D:\\test.w3"); 这可能是一个非常愚蠢的问题,但如何访问主目录或子文件夹中的同一文件? public static File readFile = new File("//home//test.w3"); 我正在从ApacheTomcat 9.0.6获取旧的404
import java.io.File;
public static File readFile = new File("D:\\test.w3");
这可能是一个非常愚蠢的问题,但如何访问主目录或子文件夹中的同一文件?
public static File readFile = new File("//home//test.w3");
我正在从ApacheTomcat 9.0.6获取旧的404
说明源服务器找不到目标资源的当前表示形式,或者不愿意透露存在该表示形式
我可能已经找到了主要问题。但我不知道如何解决它。
在eclipse中,当选择正确的服务器时,由于我似乎运行了错误的服务器,我得到以下错误: 你知道从哪里开始旅程吗?
就像Eclipse保留了这些端口,然后拒绝透露其余的端口一样。我试图更改端口名,但在新端口上出现了相同的错误。好消息是,
文件
构造函数有一个表单可以提供帮助。还有一个映射到家庭的System.property
(跨平台工作)
还值得注意的是,您可以在*nix和Windows系统上使用/
作为路径分隔符。如果您想手动构建路径,还可以使用
String path = java.nio.file.FileSystems.getDefault().getPath("").toAbsolutePath().toString(); // If the path is similar with project location, else replace with your path.
String fileName = "test.w3";
public static File readFile = new File(path + "/" + fileName);
在
Linux
上,您应该使用/
而不是Windows
中的\
为什么要使用双斜杠?我的一本旧java书籍对Windows语法使用双斜杠。假设在linux中也是一样的。尝试使用单斜杠,但没有任何区别。字符串文字中的反斜杠“…”必须加倍、转义,因为反斜杠用于转义序列,\n
是换行符等等。所以如果我想把它放在/opt/我有tomcat的地方,那会是什么样子?只是想弄清楚它在Linux中是如何工作的…@rageext你说的是home,但是File tc=new File(“/opt/apache tomcat whatever”)
然后,如果您想要该文件的某个子文件夹,filetcbin=newfile(tc,“bin”)代码>等-在Windows中的工作方式相同。Windows添加驱动器号。但是Java在Windows上支持*nix样式的路径。我仍然无法使用我收到的所有解决方案。说明源服务器找不到目标资源的当前表示形式,或者不愿意透露存在该表示形式。这可能是我在linux中忽略的某种设置。使用Centos.Origin服务器?编辑您的问题并包括装载的输出。确切地说,您要访问的路径是什么?你说的是主文件夹,你说的是“/opt”下的内容。您应该能够访问自己的主文件夹下的任何内容。如果它在其他地方,那么您可能没有权限(有文件权限)查看它。通常,tomcat下的webapps文件夹是运行所有页面的地方,我认为eclipse已经将其设置为在主文件夹下的eclipse工作区中运行。我只想从任何地方访问该文件。只是有关此解决方案的后续问题。文件系统在哪个库中?您可以在java.nio.file.FileSystems
中找到。我更新了答案,我的遗漏。
String path = java.nio.file.FileSystems.getDefault().getPath("").toAbsolutePath().toString(); // If the path is similar with project location, else replace with your path.
String fileName = "test.w3";
public static File readFile = new File(path + "/" + fileName);