简体   繁体   English

Java 表达式中的转义序列无效

[英]Invalid escape sequence in Java expression

I have the following expression in Java that allows me to load a native library:我在 Java 中有以下表达式,它允许我加载本机库:

String route = System.getenv("ProgramFiles");
System.load(route + "\\MyLib\\lib.dll");

When I launch it my Java application says the following:当我启动它时,我的 Java 应用程序显示以下内容:

Invalid escape sequence (valid ones are \\b \\t \\n \\f \\r \\" \\' \\ )无效的转义序列(有效的是 \\b \\t \\n \\f \\r \\" \\' \\ )

What I'm doing wrong?我做错了什么?

Change your code to this:将您的代码更改为:

StringBuilder builder = new StringBuilder(System.getenv("ProgramFiles"));
builder.append("\\MyLib\\lib.dll");
System.load(builder.toString().replace("\\", "/"));

The replacement of the \\\\ should fix your problem.替换\\\\应该可以解决您的问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM