【问题标题】:Write less than greater than to text file in asp vbscript在asp vbscript中写入小于大于到文本文件
【发布时间】:2017-02-06 17:13:52
【问题描述】:

我很难尝试使用 Scripting.FileSystemObject 将 xml 文件从 asp vbscript 写入文本文件。问题是小于和大于字符。为了让我将这些字符添加到代码中的变量中,我需要使用 < >。这在编写文本时会导致问题。结果是这样的

&lt;copyright&gt;request copyright&lt;/copyright&gt;
&lt;lastBuildDate&gt;10/26/2012&lt;/lastBuildDate&gt;

正确的格式应该是这样的

<copyright>request copyright</copyright>
<lastBuildDate>10/26/2012</lastBuildDate>

在编写文本文件时是否有某种技巧可以转换这些段,还是我需要做一些更奢侈的事情?

提前致谢!

【问题讨论】:

  • 我用合适的输出编辑了我的问题

标签: asp-classic vbscript special-characters delimiter


【解决方案1】:

TextStream 中写入时,您可以在变量周围加上对Replace 的两次调用

TextStream.Write Replace(Replace(myString, "&lt;","<"),"&gt;",">")

这样变量不会改变,但写出的数据使用正确的字符。

【讨论】:

  • 你这个人!我尝试了 2 个失败的单个替换行,但这就像一个魅力。非常感谢,现在我的 xml 看起来不错!
【解决方案2】:

试试这个:

Dim objStream
Set objStream = CreateObject("ADODB.Stream")
objStream.CharSet = "utf-8"
objStream.Open
objStream.WriteText "testdata"
objStream.SaveToFile "C:\test.txt", 2 

【讨论】:

  • 因为文件系统对象以 Unicode 或 ASCII 保存数据。对于 xml,我们需要 UTF 格式
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-20
  • 2018-08-18
  • 2014-02-25
  • 1970-01-01
  • 2011-02-13
相关资源
最近更新 更多