将字符转换为ASCII码

时间:2009-03-09 13:03:45

标签: vb.net ascii

需要帮助我在VB代码中读取特殊字符。 ASCII码Char(34)=“工作正常,但Char(60)=<和Char(62)=>未被读取。

我的代码

node.FirstChild.InnerText = Chr(60) & "httpRuntime executionTimeout=" & Chr(34) & "999999" & Chr(34) & " maxRequestLength=" & Chr(34) & "2097151" & Chr(34) & "/" & Chr(62)

没有ASCII码

'node.FirstChild.InnerText = "<httpRuntime executionTimeout="999999" maxRequestLength="2097151"/>"

3 个答案:

答案 0 :(得分:1)

也许这不能解答您的问题,但您可以使用两个双引号来转义VB.NET中的引号字符:

node.FirstChild.InnerText = _
    "<httpRuntime executionTimeout=""999999"" maxRequestLength=""2097151"" />"

我只是猜测:您可以将String.Format方法用于您的目的:

 node.FirstChild.InnerText = _
    String.Format( _
        "<httpRuntime executionTimeout=""{0}"" maxRequestLength=""{1}"" />", _
        timeoutValue.ToString(), reqLenValue.ToString())

答案 1 :(得分:1)

您是否尝试修改配置文件?尝试: -

node.FirstChild.InnerXml =  "<httpRuntime executionTimeout=""999999"" maxRequestLength=""2097151"" />"

注意所有Chr marlarky是不必要的,您是否试图避免将<>编码为XML实体?

答案 2 :(得分:0)

您需要提供有关您如何“看到”结果的更多信息。根据我的经验,这方面的问题很可能是在调试器中查看字符串,因为首先要获得正确的字符串。

除了引号之外,我真的不明白为什么你需要使用Chr(60)等。在代码中使用<>时会发生什么?

强烈建议您将字符串转储到控制台而不是使用调试器 - 调试器会尝试向您展示如何在代码中表示字符串,而不是逐字显示内容。

当然,如果这是XML,那么我希望再次将XML序列化以最终转出<> - 再次,有关您尝试做什么的更多信息将会很有帮助。绝对的理想(IMO)将是一个简短但完整的程序来演示这个问题 - 一个小型控制台应用程序可以做一件事,并描述你想要它做什么。