如何使用XMLStreamWriter确切地编写我输入的内容?例如,如果我创建脚本标签并用javascript填充,我不希望我所有的单引号都以‘
这是我编写的一个小测试,它没有使用我已经使用的任何抽象,只是调用了writeCharacters。
public void testWriteCharacters() {
StringWriter sw = new StringWriter();
XMLOutputFactory factory = XMLOutputFactory.newInstance();
StringBuffer out = new StringBuffer();
try {
XMLStreamWriter writer = factory.createXMLStreamWriter(sw);
writer.writeStartElement("script");
writer.writeAttribute("type","text/javascript");
writer.writeCharacters("function hw(){ \n"+
"\t alert('hello world');\n" +
"}\n");
writer.writeEndElement();
out.append(sw);
} catch (XMLStreamException e) {
} finally {
try {
sw.close();
} catch(IOException e) {
e.printStackTrace();
}
}
System.out.println(out.toString());
}
这会为围绕hello world的两个单引号生成一个apos实体。
XmlStreamWriter.writeCharacters()
无法逃脱
'
。只逃脱
<
,
>
并且
&
和
writeAttribute
也逃脱
"
(见的javadoc)。
但是,如果您想编写文本而又不逃脱,则必须CDATA
使用将该文本编写为一个小节writeCData()
。
在CDATA
各节中编写脚本的典型方法是:
<script>//<![CDATA[
...
//]]></script>
那是:
out.writeCharacters("//");
out.writeCData("\n ... \n//");
问题内容: 给定代码: 输出如下: 调试大型json文档时,很难读懂- 使用Newtonsoft.Json的内置功能(不是正则表达式或可能会破坏事情的hack),可以通过任何方式使输出字符串成为有效值: 问题答案: 查看值时,在调试器中看到的是应该在C#文件中使用以获得相同值的字符串值。 确实可以替换 与 而不更改程序的行为。 因此,要获得不同的值,您应该更改JsonConvert的工作方式,但是
如果有人需要,这是我现在的剧本: 我使用的是
问题内容: 我的号码是654987。它是数据库中的ID。我想将其转换为字符串。常规的Double.ToString(value)使它成为科学形式6.54987E5。我不想要的东西。 我发现的其他格式化功能会检查当前的语言环境,并添加适当的千位分隔符等。由于它是一个ID,我完全不能接受任何格式。 怎么做? [编辑]要澄清:我正在一个特殊的数据库上工作,该数据库将所有数字列都视为双精度。 Double
我试图使用JOLT根据属性将一个标签数组分割成多个标签。 这是输入和预期输出 输入json 预期输出如下所示 请帮助我进行颠簸转换。提前致谢
问题内容: 我需要转义[在SQL Server的sql查询中 实际上,我实际上是在寻找[[,但我不希望它像通配符一样起作用。我试过了 : 但是从这里得到错误信息: 消息102,级别15,状态1,行1“某物”附近的语法不正确。消息105,级别15,状态1,行1字符串’后的右引号; 问题答案: 使用: 您也可以使用: 在MSDN上的LIKE(Transact-SQL)中描述。
问题内容: 我正在尝试使用Java通过套接字发送多个图像,但我需要一种更快的方法将图像转换为字节数组,以便可以发送它们。我尝试了以下代码,但它向C:\驱动器写入了大约10,000张图像。有没有一种方法可以在不写入磁盘的情况下进行转换?谢谢! 问题答案: 这应该工作: