我有一个现有的应用程序,其中有一些字段在文本中包含chr(10)作为新的行分隔符。现在我发现JAVA api(和Xpages控件)无法从这些字段中读取完整的文本,并且总是将字符串剪切到第一个chr(10)。无法弄清楚如何从字段中获取全文。有人解决了这个问题吗?
在我的应用中,使用Lotus Script创建字段值,例如
doc.field=doc.field(0) & Chr(10) & "text" .
现在在xpages中(并使用java {api by doc.getItemValueString("field"))
我只返回文本,直到第一个chr(10)值。
答案 0 :(得分:1)
无论如何,您可以尝试的是针对相关字段的自定义转换器。只需为计算出的“getAsString”属性输入这样的代码:
value.split(String.fromCharCode(10)).join(" - ");
或者使用任何其他(合法)字符进行最终加入。
如果您需要将输入重新转换回其他内容,请将相应的代码放入“getAsObject”,否则将值本身传回。
很适合我。
答案 1 :(得分:1)
我不确定在Notes客户端的文本字段中输入是否会创建一个chr(10),但是试试这个转换器:
<xp:this.converter>
<xp:customConverter>
<xp:this.getAsObject><![CDATA[#{javascript:@Explode(value,"\n");}]]></xp:this.getAsObject>
<xp:this.getAsString><![CDATA[#{javascript:@Implode(value,"\n");}]]></xp:this.getAsString>
</xp:customConverter>
</xp:this.converter>