[Runtime] java.io.FileNotFoundException:字符串中的怪异字符

问题描述 投票:0回答:1

The weird symbol in the stack trace

Stacktrace:

java.io.FileNotFoundException:E:estilename.png(文件名,目录名或卷标签语法不正确)

。java编码的ANSI预期的字符串“ E:\ test \ filename.png”

1)编译使用记事本打开没有问题,看不到怪异的符号

和平结束与

[[写Filereadapp.class] [总共691ms]

-JDK:13.0.1,使用Javafx和Apache Common IO作为模块

使用模块路径,详细,添加模块-选项

与批处理文件运行命令,cd ...和javac ...一起编译

-已经看到一些帖子表明它是本地win文件系统作业。还是JDK的工作?

但是我不知道它如何改变字符串本身。以及如何解决它,防止它发生?

无重复,这绝对不是任何重复的帖子?日语单词中的char就像使用相对路径进行文件读写一样,如上所述,除非绝对路径的实现错误,否则我给出了绝对路径。因此,请不要迟钝地将此标签标记为重复,除非有特定的帖子可以解决我的情况。在没有评论原因和答案的情况下,不要随意投票。证明我为什么吮吸,好吗?我敢打赌,你有良好的教育背景。

2)StringBuilder->append all directory >append("e:").append("\test").append("\filename.png");

SB->String

FileOutputStream(Stringitself)

这些不是代码本身!^仅显示真实代码的流程。

java windows filenotfoundexception
1个回答
0
投票

在Java(和许多其他语言)中,\用于转义特殊字符(例如换行符\n)。假设您的t看起来像,在这里您将转义字母f\t\ftabStringform-feed

字符)
String s = "e:\test\filename.png";

修复您可以使用any of

String s = "e:\\test\\filename.png";

String s = "e:/test/filename.png";

String s = "e:" + File.pathSeparator + "test" + File.pathSeparator + "filename.png";

而且我敢肯定,还有其他几种写方法。

© www.soinside.com 2019 - 2024. All rights reserved.