【问题标题】:Saving new Lines in database and Json在数据库和 Json 中保存新行
【发布时间】:2012-10-14 05:24:36
【问题描述】:

我有这个问题: 我有一个由用户填写的 HTML 文本区域。 (而且他可以按 Enter 按钮换行)。 然后我使用命令获取文本区域的值:

document.getElementById("textareaCommento")

然后我使用 XmlHttpRequest 将值传递给 servlet。 在 servlet 中,我将此值保存在数据库中。 从这一点开始,我没有任何问题......

然后,在另一部分中,我想从数据库中获取值。使用 servlet 我进行此查询

Select * from comments

然后我将结果转换为 json。这里我有问题......换行符使我的 JSON 字符串无效。例如:

"Comment":"hello
Word"

我该怎么办? 提前致谢!

【问题讨论】:

    标签: database json newline


    【解决方案1】:

    您应该能够对您的值进行 url 编码,因此 hello world 实际上会变成“hello%20world”,要在 java 中执行,请参见此处:

    Encoding URL query parameters in Java

    要在 javascript 中执行此操作,请参见此处:

    Encode URL in JavaScript?

    【讨论】:

      【解决方案2】:

      您必须将数据库中的 \n 字符替换为 <br/> 之类的字符

      有关替换,请参阅replace \n and \r\n with <br /> in java

      【讨论】:

      • \n 是换行符。它在那里
      • 当您查询数据库时,也会返回 \n 和 \r 字符。您很可能看不到它们,但它们肯定在那里
      • 真的吗?我不知道!所以在将字符串放入 json 格式之前,我使用序列
        ?
        进行字符替换 \n
      • 是的,使用我给你的链接在我的答案中也可以替换 \r 字符
      • 好的,替换有效,但是当我将文本放在表格的 td 字段中时,它会显示
        。它不会换行……:(
      【解决方案3】:

      这个 CSS 对我有用,

      空白:前行;

      【讨论】:

        猜你喜欢
        • 2011-08-03
        • 2020-11-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-31
        • 2014-08-25
        • 2015-12-31
        • 1970-01-01
        相关资源
        最近更新 更多