代码之家  ›  专栏  ›  技术社区  ›  rds

传递给Java main()的命令行参数中的引号

  •  4
  • rds  · 技术社区  · 14 年前

    我用下面的命令行运行一个Java程序(编辑:在NetBeans 6.8项目属性中)

    toto has:"tutu titi"
    

    args是一个由2个字符串组成的数组

    toto
    has:tutu titi
    

    我想要(两个论点,第二个) args[1] 成为

    has:"tutu titi"
    

    编辑:我已经尝试过从Netbeans属性的“Arguments”行中用反斜杠转义引号,但是我得到了args[1]

    has:\tutu titi\
    
    5 回复  |  直到 14 年前
        1
  •  3
  •   Nigjo    12 年前

    我在NetBeans中遇到了类似的问题,并找到了解决方案:

    编辑/将private.properties中的属性“application.args”添加到此:

    application.args='has:""tutu titi""'
    

        2
  •  6
  •   Jon Skeet    14 年前

    这真的取决于你的壳。你还没说你在用什么操作系统。例如,在Windows上,这将起作用:

    java Test toto "has:\"tutu titi\""
    

    我相信同样的事情在bash中也会起作用。

    在Java中

        3
  •  2
  •   Riduidel    14 年前

    使用

    toto "has:\"tutu titi\""
    
        4
  •  1
  •   Igor SAHIL    12 年前

    如果从NetBeans(7.1.2)配置/参数对话框添加,则外部单引号和内部转义双引号对我有效,例如:

    my argument
    
        5
  •  1
  •   javabrett    8 年前

    这已经被netbeans认可为 a bug that won't be fixed !