我可以这样创建一个
直截了当的问题 - 如何从 AttributedString 对象中获取基础文本 ("Hello world")?
我在
AttributedString
对象:AttributedString as = new AttributedString("Hello world");
直截了当的问题 - 如何从 AttributedString 对象中获取基础文本 ("Hello world")?
as.toString()
会产生字符串 "java.text.AttributedString@65f00565"。我在
AttributedString.class
中看到这些信息被存储,但是故意标记为私有 --
看起来我需要使用除长度外,所有读取操作都是私有的, 因为通过迭代器访问 AttributedString 实例
as.getIterator()
获取一个 AttributedCharacterIterator
并对其进行迭代以生成底层字符串吗? 这是最佳方法吗? 为什么这些信息如此难以获取?
String
构建AttributedString
,否则除了你列出的两个选项之外,没有其他选择:获取迭代器或提前请求字符串。这两种方法都相当糟糕,但是AttributedString
确实是一个非常糟糕的类。 - biziclopAttributedString
和原始字符串的类。你在这个组合上设置所有属性(它将调用封装的AttributedString
),然后传递这个组合而不是底层的恐怖字符串。 - biziclop