空間站

          北極心空

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks

          一些字符在 URL XML 文檔中使用時有特殊的含義,因此必須針對這些含義對字符做適當編碼以使其生效。

          字串2

          URL 中的特殊字符

           

                在 URL 上執(zhí)行的查詢中,特殊字符被指定為 %xx,其中 xx 是字符的十六進制值。下表列出了這些特殊字符并描述了它們的含義。有關更多信息,請參見 http://www.faqs.org/rfcs/rfc1738.html 中的 RFC1738 規(guī)范。

          字串9


          特殊字符

           

          字串2

           


          特殊含義 字串6

           

          十六進制值 字串6

           

          +

           

          字串8

           

          表示空格(在 URL 中不能使用空格)。

           

          字串5

           

          %2B

           

          字串6

           

          /

          字串7

          分隔目錄和子目錄。

          字串7

          %2F

           

          字串7

           

          ?

           

          字串2

           

          分隔實際的 URL 和參數(shù)。

          字串6

          %3F

          字串4

          %

           

          字串4

           

          指定特殊字符。

          字串2

          %25

          字串3

          #

           

          字串1

           

          表示書簽。

          字串6

          %23

          字串6

          &

           

          字串3

           

          URL 中指定的參數(shù)間的分隔符。

           

          字串8

           

          %26

          字串2

          字串2

           

           

           

          字串4

           

          例如,考察下面的查詢:

          字串6

          SELECT *
                      

          字串8
          FROM Employees
                      

          字串5
          WHERE EmployeeID=?
                      

          字串6

          因為 ? 字符在 URL 中有特殊含義(分隔 URL 和傳遞的參數(shù)),所以在 URL 中指定該查詢時,該字符被編碼為 %3F

           

          字串9

           

          下列 URL 將執(zhí)行該查詢。在 URL 中傳遞該參數(shù)值。 字串5

          http://IISServer/nwind?sql=SELECT * FROM Employees WHERE EmployeeID=%3F FOR 
          XML AUTO&root=root&EmployeeID=1

          字串8

          瀏覽器將 ? 右側的所有特殊字符(如 + 字符)都進行轉義(即,將 ? 右側的 + 字符轉換成 %20)。

          字串1

          XML 中的特殊字符

           

          > < 這類字符是XML 標記字符,在 XML 中有特殊的含義。當在 SQL 查詢(或 XPath 查詢)中指定這些字符時,
          必須對它們進行適當?shù)木幋a(也稱為實體編碼)。下表列出了這些特殊字符并描述了它們的含義。有關更多信息,請參見
          XML 1.0 規(guī)范 中的 XML 1.0 規(guī)范。 字串8

           

          特殊字符 字串4

           

          特殊含義

           

          字串3

           

          實體編碼

           

          字串6

           

          >

            

          字串9

           

          字串9

           

          開始標記。

           

          字串4

           

          &gt;

           

          字串4

           

          <

            字串6

          字串8

           

          結束標記。

           

          字串4

           

          &lt;

          字串4

          "

           

          字串3

           

          引號。

           

          字串8

           

          &quot;

          字串4

          '

           

          字串8

           

          撇號。

          字串3

          &apos;

          字串5

          &

           

          字串3

           

          "&"符。

          字串8

          &amp;

           

          字串9

           

          字串5

           

           

           

          字串3

           

          例如,考察下面的查詢:

          字串9

          SELECT   TOP 2 *
                      

          字串4
          FROM     [Order Details]
                      

          字串3
          WHERE    UnitPrice < 10
                      

          字串9
          FOR XML AUTO
                      

          字串5

          因為 < 字符在 XML 中有特殊含義,所以當在某模板(一個 XML 文檔)中指定該查詢時,必須將該字符編碼為 &gt;
          以下就是含有該查詢的模板:

          字串9

          <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
                      

          字串5
             <sql:query>
                      

          字串1
                 SELECT top 2 *
                      

          字串6
                 FROM      [Order Details]
                      

          字串2
                 WHERE      UnitPrice &lt; 10
                      

          字串3
                 FOR XML AUTO
                      

          字串5
             </sql:query>
                      

          字串1
          </ROOT>
                      

          字串7

          URL 編碼中的實體編碼

          字串3

          有時可能需要同時指定 URL 編碼與實體編碼。例如,可在 URL 中直接指定以下模板(而不是指定文件名): 字串9

           

          <ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
                      

          字串9
             <sql:query>
                      

          字串9
                 SELECT top 2 *
                      

          字串8
                 FROM      [Order Details]
                      

          字串1
                 WHERE      UnitPrice &lt; 10
                      

          字串9
                 FOR XML AUTO
                      

          字串7

             </sql:query>
                      

          字串9

          </ROOT>
                      

          字串1

          在此例中,(為 < 標記字符指定的)實體編碼 &lt; 內的 & 字符在 URL 中有特殊含義,需要對其進行進一步
          編碼。必須將 & 字符編碼為 %26,否則在 URL 中將把它視為參數(shù)分隔符。該 URL 于是被指定為:

          字串7

          http://IISServer/nwind?template=<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
          <sql:query>SELECT TOP 2 * FROM [Order Details] WHERE UnitPrice %26lt; 10 FOR XML AUTO
          </sql:query></ROOT>
          posted on 2007-11-19 15:07 蘆葦 閱讀(888) 評論(0)  編輯  收藏 所屬分類: XML
          主站蜘蛛池模板: 香格里拉县| 陵川县| 游戏| 乐业县| 铁岭市| 杂多县| 卫辉市| 内丘县| 比如县| 镇原县| 涿州市| 大兴区| 宁波市| 二手房| 淮北市| 桐乡市| 阿城市| 开鲁县| 顺义区| 永善县| 岑溪市| 池州市| 竹北市| 开远市| 广饶县| 武安市| 丽江市| 多伦县| 东安县| 沽源县| 舞钢市| 五家渠市| 中西区| 上犹县| 谷城县| 台北市| 鄂温| 文安县| 平陆县| 于都县| 肥东县|