繁体   English   中英

如何将字符串转换为 HTML 可读 ASCII 字符

[英]How to convert String into HTML readable ASCII character

我正在尝试将 Java 字符串转换为 HTML 可读代码。
例如:你好 W o r ld as &#x48 &#x65 &#x6c &#x6c &#x6f &#x57 &#x6f &#x72 &#x6c &#x64

到目前为止我做了什么:

    private static String convertToAscii(String str) {
        for(int i=0; i<str.length(); i++) {
            str += "&#"+(int)str.charAt(i);
        }
    return str;
    }

它花费了太多时间加上处理器风扇制造噪音。

提前致谢

这个 gif 不是这里发生的事情的完美表示,但它得到了基本的想法在此处输入图像描述

这边...

for(int i=0; i<str.length(); i++)

...您正在遍历名为str的字符串。

但在这儿...

str += ...

...您正在添加到 str。

您正试图到达 str 的末尾,但实际上您是在为每个循环添加 str 。 您已经创建了一个无限循环。

添加到不同的字符串。 像这样。


   private static String convertToAscii(String str) {
   
      String output = "";
   
      for(int i=0; i<str.length(); i++) {
         output += "&#"+(int)str.charAt(i);
      }
         
      return output;
   
   }
   

你也可以这样做:

private static String convertToAscii(String str) { 
    return str     
              .chars() 
              .boxed()
              .reduce("", (subRes, currVal) -> subRes + "&#" + currVal + ";" , (subVal, mappedVal) -> subVal + "" + mappedVal);

Java >= 8 更快

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM