SAX2解析器中xml-string属性提及的TBS chunk是什么?
关于SAX2中
http://xml.org/sax/properties/xml-string属性及TBS chunk的解释 首先,http://xml.org/sax/properties/xml-string是SAX2定义的标准属性,核心作用是让你在解析回调(比如startElement、characters、endElement等方法执行期间)获取到触发当前事件的原始XML文本片段。
你困惑的TBS chunk,是SAX文档里对这段原始文本的简称,本质就是对应当前SAX事件的原始XML字符块——解析器处理XML时会把文档拆分成一个个“令牌”(比如元素开始标记、文本内容、元素结束标记等),每个令牌对应一个SAX事件,TBS chunk就是生成当前令牌的那段原始XML字符序列。
举几个具体场景的例子:
- 当解析器触发
startElement事件处理<book id="1">时,获取该属性会得到原始字符串<book id="1">; - 触发
characters事件处理文本Hello & World时,属性返回的是未解析的原始字符串Hello & World,而非转义后的Hello & World; - 触发
endElement事件处理</book>时,属性返回的就是</book>这段原始标记。
需要注意:这个属性仅能在回调方法执行期间读取,回调结束后解析器通常会释放相关数据,无法再获取。
内容的提问来源于stack exchange,提问作者Kevin Riff
相关产品推荐
相关产品推荐

