您好,今天帅帅来为大家解答以上的问题。请问如何将双引号写入文本文件中,请问如何将双引号写入文本文件相信很多小伙伴还不知道,现在让我们一起来看看吧!
1、从您的电子邮件可以看出,您正尝试在 XML 文件中写入以下这行代码: xml version = "1.0" encoding = "UTF-8" ?> 不过,您被卡在了 1.0 和UTF-8 两边的双引号上。
2、在尝试将数据写入文本文件(和 XML 文件,当然,它也是文本文件)时,双引号是一个大麻烦;这是因为,除了其他一些用法外,双引号还用于表示字符串的开头和结尾。
3、下面这行代码注定会失败:objFile.WriteLine " xml version = "1.0" encoding = "UTF-8" ?>" 为什么?就像我们所说的,双引号指示字符串的开头和结尾。
4、就我们的脚本来说,您的字符串实际上包括:" xml version = "。
5、换句话说,该字符串包括嵌入第一对双引号内的所有内容。
6、因此脚本向前读取时,碰到 " xml version = " 便认为这是字符串的结尾。
7、不过,该字符串的后面还有其他一些文本:1.0" encoding = "UTF-8" ?>"。
8、这不是一个有效的脚本命令,而且 VBScript 不知道它的意义。
9、因此,它只能失望地放弃,于是脚本失败。
10、若要解决此问题,我们需要找到另一个方法,来指定双引号应当写入文本文件。
11、有好几种不同的方法都可解决此问题,但我们只打算侧重介绍其中的一种(不过,在本专栏的结尾处我们将向您简要地介绍另一种方法):我们将要使用 VBScript 的 Chr 函数来表示双引号。
12、您大概也知道,所有您可通过键盘键入的字符都是由 ASCII 值表示的;例如,双引号的 ASCII 值为 34。
13、若要在文件中插入双引号,我们可以通过指定“Chr(34)”来实现此目的;Chr 函数捕获 ASCII 值“34”并将其转换为一个实际字符(在此例中为双引号)。
14、相信我们,这种方法的实际操作比听起来要简单得多。
15、以下这个脚本可将所需要的行写入文件 C:/Scripts/Test.xml:Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.CreateTextFile("C:/Scripts/test.xml") objFile.WriteLine " xml version = " & chr(34) & "1.0" & chr(34) & _ " encoding = " & chr(34) & "UTF-8" & chr(34) & " ?>" objFile.Close 首先,我们创建了 FileSystemObject 的一个实例,然后调用“CreateTextFile”方法创建文件 C:/Scripts/Test.xml。
16、于是就获得了以下这行代码,它可将所需要的行写入文件:objFile.WriteLine " xml version = " & chr(34) & "1.0" & chr(34) & _ " encoding = " & chr(34) & "UTF-8" & chr(34) & " ?>" 是的,它看起来有点儿古怪,但它确实不错。
17、我们需要执行的全部操作就是调用“WriteLine”方法,并要求 WriteLine 执行以下操作。
18、首先,我们需要以字符“ xml version = ”为开头来撰写要写入的字符串。
19、(请注意等号后面的空格。
20、)之后,使用 ASCII 值 34 来添加字符。
21、这就是:"。
22、我们的字符串开始时是这个样子: xml version = " 当然,我们还没有完成。
23、接下来,我们添加字符“1.0”,紧接着添加另一对双引号。
24、于是获得了与以下类似的字符串: xml version = "1.0" 您能否理解这是要做什么?我们添加了短语 encoding = (还要注意空格;必须确保完成的字符串有适当的间隔),依次紧随其后的分别是双引号、字符 UTF-8 和另一组双引号。
25、即: xml version = "1.0" encoding = "UTF-8" 现在我们只需添加最后一组字符即可:?>"。
26、当完全撰写好字符串之后,WriteLine 会将以下代码写入 XML 文件: xml version = "1.0" encoding = "UTF-8" ?> 明白了吗?我们之前执行的操作就是捕获要写入的字符串并用双引号将其引起来:" xml version = "1.0" encoding = "UTF-8" ?>" 就我们所知,这不是有效的 VBScript 语法,因此我们用 & Chr(34) & 替代各组嵌入的引号(并确保所有其他字符串都用双引号引起来)。
27、例如,我们在此替代了 1.0 两边的双引号:" xml version = " & Chr(34) & "1.0" & Chr(34) & " encoding = "UTF-8" ?>" 然后又替代了 UTF-8 两边的双引号:" xml version = " & Chr(34) & "1.0" & Chr(34) & " encoding = " & Chr(34) & "UTF-8" & Chr(34) & " ?>" 若要测试此脚本,我们可以将完成的代码回显到屏幕上:Wscript.Echo " xml version = " & Chr(34) & "1.0" & Chr(34) & " encoding = " & _ Chr(34) & "UTF-8" & Chr(34) & " ?>" 运行一下,看看效果如何。
28、 我们刚才提到了将引号写入文本文件的另一种方法。
本文就为大家分享到这里,希望小伙伴们会喜欢。