Google App Engine本地数据存储附加了吗?持久化字节

时间:2012-05-06 14:30:57

标签: google-app-engine

将blob(byte [])存储到Google App Engine数据存储区后,我得到了一个'?'在从Datastore获取相同数据后附加到我的数据。

我有一个想法,这与编码有关,因为我不确定GAE默认编码是什么,所以我尝试了几个字符集,我得到了不同的结果,我想如果我分享这个,我可以得到更多的光问题。

在我的DBHelper类中(Util用于保存和获取数据), 当我最初使用以下内容保存数据时

Entity resultEntity = new Entity("Entity");
resultEntity.setProperty("HtmlResult", new Blob(str.getBytes()))

我得到了一个'?'附加到我的结果的末尾(从本地数据存储区获取的数据)

将我的代码更改为以下内容后:

resultEntity.setProperty(" HtmlResult",new Blob(str.getBytes(Charset.forName(" UTF-8"))));

然后我将��附加到结果上。

另外,我认为当我使用ISO-8859-1时,我有�。很抱歉没有确定,但我必须在每次测试之前部署到GAE。

此问题与Datastore in Hosted GAE- Google app engine appends '?' character during data retrieval有关,但不直接。

请提出您的建议。

风云:我也试过了

<env-variables>
 <env-var name="DEFAULT_ENCODING" value="UTF-8" />
</env-variables> 

请注意,我在本地计算机上没有此问题,只有在Google应用引擎上部署和测试我的应用时才会出现此问题。

1 个答案:

答案 0 :(得分:0)