java特殊處理String.format中的%,使用%做一次轉義


背景:java通過String.format(,)可將文本內容模板化,可用字符串替換前面
例如 String.format("hi %s","張三”),會用張三替換%s的內容。

%在格式化時有特殊意義,那如果我就要用%怎么辦?例如html中的width:100%

例子:String.format("<div style=\"width:calc(100% - 265px);\”>%s</div>","內容展示")
會報錯:Exception in thread "main" java.util.DuplicateFormatFlagsException: Flags = ' 
 
原因:里面用到了%號,但是卻不是做文本替換的。

解決方法:%特殊處理,用%做一次轉義,處理結果如下

String.format("<div style=\"width:calc(100%%- 265px);\”>%s</div>","內容展示")

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM