首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >带有@的C#逐字字符串的Java等价物

带有@的C#逐字字符串的Java等价物
EN

Stack Overflow用户
提问于 2010-04-20 17:09:55
回答 3查看 29K关注 0票数 104

快速问答。在Java中,是否有@的等价物应用于字符串:

例如,我可以在C#中执行@"c:\afolder\afile",让它在处理时忽略转义字符,而不必执行"c:\\afolder\\aFile"。有没有Java的等价物?

嗯: stackoverflow在我身上逃脱了..LOL。第二个示例应为:

c:(double-backslash)afolder(double-backslash)aFile

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-04-20 17:11:20

No。转义/外部化字符串是您唯一的选择。

票数 78
EN

Stack Overflow用户

发布于 2010-04-20 19:32:50

正如Kent和Jon所说,没有。

我的回答只是为了指出,即使有,对于你的特定情况,这在一般情况下也不是一个好主意,假设程序不止一次。

Java程序不仅可以在Windows平台上运行,还可以在其他平台上运行,并且其他平台具有不同的文件分隔符。因此,处理特定示例的正确方法不是处理转义反斜杠,而是获取文件分隔符属性:

代码语言:javascript
复制
    String sep = System.getProperty("file.separator");
    String filename = ROOTDIR + sep + "folder" + sep + "afile";

你可以根据一些策略单独创建ROOTDIR --不仅仅是平台,还有你是否想让你的“文件”相对于实际的文件系统根目录,或者相对于用户的主目录。

但肯定的是,使用文件分隔符属性可以使您的程序更广泛地使用。这是更多的工作吗?是。正如Wanda Sykes所说,“但这是值得的”。

票数 16
EN

Stack Overflow用户

发布于 2021-03-07 19:28:18

Java从2019年9月开始使用它,但它使用了不同的sintax。“(三个双引号)。

*在较新的java版本中(预览中的+13,生产就绪时的+15 ),java文本块可以实现大部分等效功能。

代码语言:javascript
复制
String html = """         
            <xml>
                <ody>
                    <pan>example xml </pan>
                </ody>
            </xml>""";

关于https://docs.oracle.com/en/java/javase/13/text_blocks/index.html的文档

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2673855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档