所以我使用com.google.appengine.api.datastore.Text
在我的GAE数据库中存储整篇文章(字符串超过500个字符)。
Google API说<variableName>.getvalue()
会给出Text变量的值!
但是,如果我插入一个已经缩进和格式化的字符串..当我使用.getValue()
函数并在我的网页上打印文本时,我将丢失格式和空格。
这是我的函数代码,它将HTML String返回给客户端,然后将该HTML字符串附加到div并显示它。
public void getArticle(int articleId)
{
PersistenceManager pm = PMF.get().getPersistenceManager();
Articles a = pm.getObjectById(Articles.class,(articleId));
String html = "";
html += "<p>" + (a.getArticle()).getValue() + "</p>";
return html;
}
答案 0 :(得分:1)
您需要将HTML包装在<pre>
标记中以保留格式。
即
html += "<p><pre>" + (a.getArticle()).getValue() + "</pre></p>";
答案 1 :(得分:0)
您的问题是浏览器删除了无关的空格和换行符。这与数据存储区无关,如果您只是将内容直接放到网页上,就会发生这种情况。
您需要将文本转换为html进行演示(即用
标签替换换行符或将每个实际段落换行),或者如上所述使用保留的html元素格式化。
您可以使用标记或应用css样式规则&#39; white-space:pre;&#39;或者&#39; white-space:pre-line;&#39;
您可以查看空白参考here。在此页面上,您正在查看的行为在&#39; normal&#39;。
的价值下进行了描述。