java切割\的问题?

发布于 2022-09-05 09:34:15 字数 188 浏览 40 评论 0

大家看图片吧:需求就是把trString中的单反斜杠切换成双反斜杠或者斜杠;
但是始终转换不了,有办法吗?谢谢
图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

口干舌燥 2022-09-12 09:34:15

这是JAVA基础问题

你的输入是错误的,反斜杠 是转义字符,比如你想定义一个字符串 a\b\c, 那么需要写成:

String str = "a\\b\\c";

你可以写个简单的例子输出测试一下

public class Test11 {
    public static void main(String[] args) {
        String str1 = "a\\b\\c\\d";
        System.out.println(str1);
        String str2 = str1.replace("\\", "/");
        System.out.println(str2);
    }
}
忆梦 2022-09-12 09:34:15

根据你的评论,你应该是转换文件路径。先看下面的代码:

    String str1 = "z:\1\0\20170807\110\1621262.V3";
    System.out.println(str1); // output: z:...(特除字符显示不了)

    String str2 = "z:\\1\\0\\20170807\\110\\1621262.V3";
    System.out.println(str2); // ouptput: z:\1\0\20170807\110\1621262.V3

    String str3 = "z:\\\\1\\\\0\\\\20170807\\\\110\\\\1621262.V3";
    System.out.println(str3); // output: z:\\1\\0\\20170807\\110\\1621262.V3

所以你从接口得到的应该是字符应该是z:\1\0\20170807\110\1621262.V3

  • 在IDE的编辑器里面正确写上面字符串的方式应该是:String str2 = "z:\\1\\0\\20170807\\110\\1621262.V3";
  • 如果你要一个字符保存起来或是打印显示出来是:"z:\\1\\0\\20170807\\110\\1621262.V3";,在IDE正确地表达它应该是:"z:\\\\1\\\\0\\\\20170807\\\\110\\\\1621262.V3";

回到你的问题:首先,如果你从接口或别的地方得到的字符串是z:\1\0\20170807\110\1621262.V3,这个路径应该是Windows可以识别,例如:"c:\windows"就是有效的文件路径:

System.out.println(new File("c:\\windows").getAbsolutePath());

其次,如果是要把文件路径转换成双\\

    String str4 = str2.replace("\\", "\\\\");
    System.out.println(str4); // output: z:\\1\\0\\20170807\\110\\1621262.V3

最后,另外一种转为文件路径的方式是把:\代替成 /

    String str5 = str2.replace("\\", "/");
    System.out.println(str5); // output: z:/1/0/20170807/110/1621262.V3
凝望流年 2022-09-12 09:34:15

如果是路径,应该是有两个反斜杠“\”,或者单个“/”就行,所以感觉这个trString有点问题。
如果用“”单个反斜杠,会被当作转义字符处理。

public static void main(String[] args){
        String str = "Z:/1/0/20170807/110/fds.V3";
        System.out.println(str.replace("/","\\\\"));
    }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文