我如何处理参数中的空格?【JAVA教程】

!
也想出现在这里? 联系我们
信息

我如何处理参数中的空格?,第1张

概述我如何处理参数中的空格

我的应用程序启动并加载文件,如果我这样做: myApp /file:c:nospaces.asd从cmd但如果我做myApp /file:c:with spaces.asd它不会工作,因为该程序收到两个参数: myApp /file:c:with和spaces.asd 。

我知道我可以做我的应用程序myApp \”/file:c:with spaces.asd\” ,它会像这样从cmd 。 然而,这不是一个好的解决scheme,因为如果我双击.asd文件(自定义扩展名)(并select与我的应用程序启动),那么main不会获取参数作为一行,而是两个参数。

我怎么能解决这个问题,以便我的main收到只有一个参数时,双击文件?

在C / C ++中创build一个unix / linux命令行工具的最佳做法是什么?

将Unicode命令行parameter passing给控制台应用程序

linux bash:在一个case中对-c和 – 作出反应

用于parsing参数GNU风格的库?

如何通过参数子项设置windows服务“命令行”参数?

将string列表传递给控制台应用程序

如何使用Apache Mod_rewrite删除PHP扩展名,同时保留GET参数?

linux命令输出作为另一个命令的参数

linux的别名问题

在C函数中使用“nmem”和“size”参数需要什么?

如果找不到文件,可以将参数连接在一起。 像这样的东西:

public static voID main(String[] args) { String filename = joinArgumentsTovalIDfilename(args); } public static String joinArgumentsTovalIDfilename(String[] args) { if(args.length == 0) { return \”\”; } String filename = args[0]; int index = 1; while(!new file(filename).exists() && index < args.length) { filename += \” \” + args[index]; index++; } return filename; }

这假定第一个参数(或参数)必须是文件名。 任何额外的agruments可以通过以某种方式记住偏移量索引来评估(不包括在上面的代码中)。

但是请注意:这是一个将参数传递给应用程序的非标准行为,可能导致cunfusion。 所以如果你找到一个方法来传递一个\”\”包装文件名参数,不要这样做!

双击启动java将受到与windows注册表相关的windows注册表中的jar文件启动命令的影响。

这些是一些类似的问题,你可以看看:

在windows上运行JAR文件

java可以从cmd运行jar,但不能通过双击运行

他们提到了确保在注册表c:…javaw.exe\” -jar \”%1\” %的可执行文件后面带有通配符的有用部分c:…javaw.exe\” -jar \”%1\” %

总结

以上是内存溢出为你收集整理的我如何处理参数中的空格?全部内容,希望文章能够帮你解决我如何处理参数中的空格?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞185 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容