<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_itecho</title><subtitle type="text">寻梦的路崎岖而漫长,黑暗中只有一点星光.几多辛苦几多愁,欲问我在何方?</subtitle><id>http://feed.cnblogs.com/blog/u/36453/rss</id><updated>2012-05-06T11:51:26Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/36453/rss"/><entry><id>http://www.cnblogs.com/itecho/archive/2012/05/06/2486484.html</id><title type="text">图片转pdf</title><summary type="text">private void process(string[] files, string newpdf) { iTextSharp.text.Document document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 25, 25, 25, 25); try { iTextSharp.text.pdf.PdfWriter.GetInstance(document, new FileStream(newpdf, FileMode.Create, FileAccess.ReadWrite)); document.Ope.</summary><published>2012-05-06T11:51:00Z</published><updated>2012-05-06T11:51:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2012/05/06/2486484.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2012/05/06/2486484.html"/><content type="html">&amp;nbsp;private void process(string[] files, string newpdf)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iTextSharp.text.Document document = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 25, 25, 25, 25); &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iTextSharp.text.pdf.PdfWriter.GetInstance(document, new FileStream(newpdf, FileMode.Create, FileAccess.ReadWrite));&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Open();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iTextSharp.text.Image image;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; files.Length; i++)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; image = iTextSharp.text.Image.GetInstance(files[i]);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (image.Height &amp;gt; iTextSharp.text.PageSize.A4.Height - 25)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; image.ScaleToFit(iTextSharp.text.PageSize.A4.Width - 25, iTextSharp.text.PageSize.A4.Height - 25);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (image.Width &amp;gt; iTextSharp.text.PageSize.A4.Width - 25)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; image.ScaleToFit(iTextSharp.text.PageSize.A4.Width - 25, iTextSharp.text.PageSize.A4.Height - 25);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; image.Alignment = iTextSharp.text.Image.ALIGN_MIDDLE;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //image.SetDpi(72, 72);&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.NewPage();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(image);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Phrase phrase3 = new Phrase("&lt;a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#58;&amp;#100;&amp;#114;&amp;#101;&amp;#105;&amp;#103;&amp;#110;&amp;#64;&amp;#49;&amp;#54;&amp;#51;&amp;#46;&amp;#99;&amp;#111;&amp;#109;&amp;#92;&amp;#110;"&gt;dreign@163.com\n&lt;/a&gt;", FontFactory.GetFont(FontFactory.TIMES, 9, iTextSharp.text.Font.NORMAL, new iTextSharp.text.Color(192, 192, 192)));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //document.Add(phrase3);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception ioe)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(ioe.Message);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Close();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;/span&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2486484.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2012/05/06/2486484.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2012/05/03/2480125.html</id><title type="text">C#实现office文档转换为PDF或xps的一些方法</title><summary type="text">这段时间一直在研究office文档转为PDF或xps格式的方法。查找了一些资料。一下是我所知道的一些方法代码支持任意office格式需要安装office 2007 还有一个office2007的插件OfficeSaveAsPDFandXPS下载地址[url]http://www.microsoft.com/downloads/details.aspx?FamilyId=4D951911-3E7E-4AE6-B059-A2E79ED87041&amp;displaylang=en[/url]这是一个微软官方出的office插件。安装好之后，打开VS,以VS2005为例新建windows应用程序项</summary><published>2012-05-03T02:01:00Z</published><updated>2012-05-03T02:01:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2012/05/03/2480125.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2012/05/03/2480125.html"/><content type="html">&lt;div class="showContent"&gt;&lt;div&gt;这段时间一直在研究office文档转为PDF或xps格式的方法。查找了一些资料。&lt;/div&gt;&lt;div&gt;一下是我所知道的一些方法&lt;/div&gt;&lt;div&gt;代码支持任意office格式&lt;/div&gt;&lt;div&gt;需要安装office 2007 还有一个office2007的插件OfficeSaveAsPDFandXPS&lt;/div&gt;&lt;div&gt;下载地址&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=4D951911-3E7E-4AE6-B059-A2E79ED87041&amp;amp;displaylang=en"&gt;[url]http://www.microsoft.com/downloads/details.aspx?FamilyId=4D951911-3E7E-4AE6-B059-A2E79ED87041&amp;amp;displaylang=en[/url]&lt;/a&gt;&lt;/div&gt;&lt;div&gt;这是一个微软官方出的office插件。&lt;/div&gt;&lt;div&gt;安装好之后，打开VS,以VS2005为例&lt;/div&gt;&lt;div&gt;新建windows应用程序项目&lt;/div&gt;&lt;div&gt;添加以下com组件的引用&lt;/div&gt;&lt;div&gt;Microsoft Word 12.0 Object Library&lt;/div&gt;&lt;div&gt;Microsoft PowerPoint 12.0 Object Library&lt;/div&gt;&lt;div&gt;Microsoft Excel 12.0 Object Library&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;------------------------------------------------------&lt;/div&gt;&lt;div&gt;using Word = Microsoft.Office.Interop.Word;&lt;br /&gt;using Excel = Microsoft.Office.Interop.Excel;&lt;br /&gt;using PowerPoint = Microsoft.Office.Interop.PowerPoint;&lt;/div&gt;&lt;div&gt;using Microsoft.Office.Core;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;我们可以使用一个枚举类型来决定生成文件的类型&lt;/div&gt;&lt;div&gt;Word.WdExportFormat wd = Microsoft.Office.Interop.Word.WdExportFormat.wdExportFormatPDF;&lt;/div&gt;&lt;div&gt;Excel.XlFixedFormatType excelType = Microsoft.Office.Interop.Excel.XlFixedFormatType.xlTypePDF;&lt;br /&gt;PowerPoint.PpSaveAsFileType ppType = Microsoft.Office.Interop.PowerPoint.PpSaveAsFileType.ppSaveAsPDF;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;这里Word跟Excel我使用了ExportAsFixedFormat,PowerPoint我使用了SaveAs方法。&lt;/div&gt;&lt;div&gt;对于Word跟PowerPoint效果是一样的，只是SaveAs方法支持的格式更多。&lt;/div&gt;&lt;div&gt;但是Excel似乎不支持SaveAs方法，呵呵&lt;/div&gt;&lt;div&gt;----------------&lt;/div&gt;&lt;div&gt;Word转换方法&lt;/div&gt;&lt;div&gt;&lt;div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; line-height: 16px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 4px; font-family: verdana,宋体; color: #000000; font-size: 10pt; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&lt;font color="#0000ff"&gt;private&lt;/font&gt; &lt;font color="#0000ff"&gt;bool&lt;/font&gt; Convert(&lt;font color="#0000ff"&gt;string&lt;/font&gt; sourcePath, &lt;font color="#0000ff"&gt;string&lt;/font&gt; targetPath, Word.WdExportFormat exportFormat) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; result; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; paramMissing = Type.Missing; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.ApplicationClass wordApplication = &lt;font color="#0000ff"&gt;new&lt;/font&gt; Word.ApplicationClass(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.Document wordDocument = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;try&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; paramSourceDocPath = sourcePath; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;string&lt;/font&gt; paramExportFilePath = targetPath; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportFormat paramExportFormat = exportFormat; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; paramOpenAfterExport = &lt;font color="#0000ff"&gt;false&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportOptimizeFor paramExportOptimizeFor = &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportOptimizeFor.wdExportOptimizeForPrint; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportRange paramExportRange = Word.WdExportRange.wdExportAllDocument; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;int&lt;/font&gt; paramStartPage = 0; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;int&lt;/font&gt; paramEndPage = 0; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportItem paramExportItem = Word.WdExportItem.wdExportDocumentContent; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; paramIncludeDocProps = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; paramKeepIRM = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportCreateBookmarks paramCreateBookmarks = &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Word.WdExportCreateBookmarks.wdExportCreateWordBookmarks; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; paramDocStructureTags = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; paramBitmapMissingFonts = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; paramUseISO19005_1 = &lt;font color="#0000ff"&gt;false&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordDocument = wordApplication.Documents.Open( &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramSourceDocPath, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (wordDocument != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordDocument.ExportAsFixedFormat(paramExportFilePath, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramExportFormat, paramOpenAfterExport, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramExportOptimizeFor, paramExportRange, paramStartPage, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramEndPage, paramExportItem, paramIncludeDocProps, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramKeepIRM, paramCreateBookmarks, paramDocStructureTags, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;paramBitmapMissingFonts, paramUseISO19005_1, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;finally&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (wordDocument != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordDocument.Close(&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordDocument = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (wordApplication != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordApplication.Quit(&lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing, &lt;font color="#0000ff"&gt;ref&lt;/font&gt; paramMissing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordApplication = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.Collect(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.WaitForPendingFinalizers(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.Collect(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.WaitForPendingFinalizers(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;return&lt;/font&gt; result; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Excel转换方法&lt;/div&gt;&lt;div&gt;&lt;div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; line-height: 16px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 4px; font-family: verdana,宋体; color: #000000; font-size: 10pt; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&lt;font color="#0000ff"&gt;private&lt;/font&gt; &lt;font color="#0000ff"&gt;bool&lt;/font&gt; Convert(&lt;font color="#0000ff"&gt;string&lt;/font&gt; sourcePath, &lt;font color="#0000ff"&gt;string&lt;/font&gt; targetPath, XlFixedFormatType targetType) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; result; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; missing = Type.Missing; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ApplicationClass application = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Workbook workBook = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;try&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;application = &lt;font color="#0000ff"&gt;new&lt;/font&gt; ApplicationClass(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; target = targetPath; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; type = targetType; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;workBook = application.Workbooks.Open(sourcePath, missing, missing, missing, missing, missing, &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;missing, missing, missing, missing, missing, missing, missing, missing, missing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;workBook.ExportAsFixedFormat(targetType, target, XlFixedFormatQuality.xlQualityStandard, &lt;font color="#0000ff"&gt;true&lt;/font&gt;, &lt;font color="#0000ff"&gt;false&lt;/font&gt;, missing, missing, missing, missing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;catch&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = &lt;font color="#0000ff"&gt;false&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;finally&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (workBook != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;workBook.Close(&lt;font color="#0000ff"&gt;true&lt;/font&gt;, missing, missing); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;workBook = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (application != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;application.Quit(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;application = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.Collect(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.WaitForPendingFinalizers(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.Collect(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.WaitForPendingFinalizers(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;return&lt;/font&gt; result; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;div&gt;PowerPoint转换方法&lt;/div&gt;&lt;div&gt;&lt;div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; line-height: 16px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 4px; font-family: verdana,宋体; color: #000000; font-size: 10pt; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;private&lt;/font&gt; &lt;font color="#0000ff"&gt;bool&lt;/font&gt; Convert(&lt;font color="#0000ff"&gt;string&lt;/font&gt; sourcePath, &lt;font color="#0000ff"&gt;string&lt;/font&gt; targetPath, PpSaveAsFileType targetFileType) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;bool&lt;/font&gt; result; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; missing = Type.Missing; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ApplicationClass application = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Presentation persentation = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;try&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;application = &lt;font color="#0000ff"&gt;new&lt;/font&gt; ApplicationClass(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;persentation = application.Presentations.Open(sourcePath, MsoTriState.msoTrue, MsoTriState.msoFalse, MsoTriState.msoFalse); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;persentation.SaveAs(targetPath, targetFileType, Microsoft.Office.Core.MsoTriState.msoTrue); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = &lt;font color="#0000ff"&gt;true&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;catch&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = &lt;font color="#0000ff"&gt;false&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;finally&lt;/font&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (persentation != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;persentation.Close(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;persentation = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;if&lt;/font&gt; (application != &lt;font color="#0000ff"&gt;null&lt;/font&gt;) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;application.Quit(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;application = &lt;font color="#0000ff"&gt;null&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.Collect(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.WaitForPendingFinalizers(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.Collect(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GC.WaitForPendingFinalizers(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;return&lt;/font&gt; result; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;如果是word文档或者Excel文档想要转换xps格式，我们还可以有一种方法，那就是利用xps虚拟打印机实现。&lt;/div&gt;&lt;div&gt;安装了.NetFrameWork3.5之后，默认会在系统中安装XPS虚拟打印机，我们将其设置为默认打印机。&lt;/div&gt;&lt;div&gt;Microsoft XPS Document Writer&lt;/div&gt;&lt;div&gt;word文档打印为xps&lt;/div&gt;&lt;div&gt;&lt;div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; line-height: 16px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 4px; font-family: verdana,宋体; color: #000000; font-size: 10pt; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;public&lt;/font&gt; &lt;font color="#0000ff"&gt;void&lt;/font&gt; PrintWord(&lt;font color="#0000ff"&gt;string&lt;/font&gt; wordfile) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;oWord.ApplicationClass word = &lt;font color="#0000ff"&gt;new&lt;/font&gt; oWord.ApplicationClass(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Type wordType = word.GetType(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#008000"&gt;//打开WORD文档 &lt;/font&gt;&lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;oWord.Documents docs = word.Documents; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Type docsType = docs.GetType(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; objDocName = wordfile; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;oWord.Document doc = (oWord.Document)docsType.InvokeMember(&lt;font color="#800000"&gt;"Open"&lt;/font&gt;, System.Reflection.BindingFlags.InvokeMethod, &lt;font color="#0000ff"&gt;null&lt;/font&gt;, docs, &lt;font color="#0000ff"&gt;new&lt;/font&gt; Object[] { objDocName, &lt;font color="#0000ff"&gt;true&lt;/font&gt;, &lt;font color="#0000ff"&gt;true&lt;/font&gt; }); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#008000"&gt;//打印输出到指定文件 &lt;/font&gt;&lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#008000"&gt;//可以使用 doc.PrintOut();方法,次方法调用中的参数设置较繁琐,建议使用 Type.InvokeMember 来调用时可以不用将PrintOut的参数设置全,只设置4个主要参数 &lt;/font&gt;&lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Type docType = doc.GetType(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; printFileName = wordfile + &lt;font color="#800000"&gt;".xps"&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;docType.InvokeMember(&lt;font color="#800000"&gt;"PrintOut"&lt;/font&gt;, System.Reflection.BindingFlags.InvokeMethod, &lt;font color="#0000ff"&gt;null&lt;/font&gt;, doc, &lt;font color="#0000ff"&gt;new&lt;/font&gt; &lt;font color="#0000ff"&gt;object&lt;/font&gt;[] { &lt;font color="#0000ff"&gt;false&lt;/font&gt;, &lt;font color="#0000ff"&gt;false&lt;/font&gt;, oWord.WdPrintOutRange.wdPrintAllDocument, printFileName }); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#008000"&gt;//退出WORD &lt;/font&gt;&lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;wordType.InvokeMember(&lt;font color="#800000"&gt;"Quit"&lt;/font&gt;, System.Reflection.BindingFlags.InvokeMethod, &lt;font color="#0000ff"&gt;null&lt;/font&gt;, word, &lt;font color="#0000ff"&gt;null&lt;/font&gt;); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Excel利用虚拟打印机转换为xps&lt;/div&gt;&lt;div&gt;&lt;div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; line-height: 16px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 4px; font-family: verdana,宋体; color: #000000; font-size: 10pt; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;public&lt;/font&gt; &lt;font color="#0000ff"&gt;void&lt;/font&gt; PrintExcel(&lt;font color="#0000ff"&gt;string&lt;/font&gt; execlfile) &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{ &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Excel.ApplicationClass eapp = &lt;font color="#0000ff"&gt;new&lt;/font&gt; Excel.ApplicationClass(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Type eType = eapp.GetType(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Excel.Workbooks Ewb = eapp.Workbooks; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Type elType = Ewb.GetType(); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; objelName = execlfile; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Excel.Workbook ebook = (Excel.Workbook)elType.InvokeMember(&lt;font color="#800000"&gt;"Open"&lt;/font&gt;, System.Reflection.BindingFlags.InvokeMethod, &lt;font color="#0000ff"&gt;null&lt;/font&gt;, Ewb, &lt;font color="#0000ff"&gt;new&lt;/font&gt; Object[] { objelName, &lt;font color="#0000ff"&gt;true&lt;/font&gt;, &lt;font color="#0000ff"&gt;true&lt;/font&gt; }); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#0000ff"&gt;object&lt;/font&gt; printFileName = execlfile + &lt;font color="#800000"&gt;".xps"&lt;/font&gt;; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Object oMissing = System.Reflection.Missing.Value; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ebook.PrintOut(oMissing, oMissing, oMissing, oMissing, oMissing, &lt;font color="#0000ff"&gt;true&lt;/font&gt;, oMissing, printFileName); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt; &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;eType.InvokeMember(&lt;font color="#800000"&gt;"Quit"&lt;/font&gt;, System.Reflection.BindingFlags.InvokeMethod, &lt;font color="#0000ff"&gt;null&lt;/font&gt;, eapp, &lt;font color="#0000ff"&gt;null&lt;/font&gt;); &lt;br /&gt;&lt;img align="top" src="http://blog.51cto.com/images/editer/InBlock.gif"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/div&gt;&lt;/div&gt;&lt;div&gt;，同样，如果系统安装了PDF虚拟打印机，如5D PDF之类的，我们也可以将其设置为默认打印机以达到转换为PDF格式的目的&lt;/div&gt;&lt;div&gt;我们可以将这些方法放在windows service里面，实现文档的后台转换。&lt;/div&gt;&lt;p&gt;本文出自 &amp;#8220;&lt;a href="http://seanli888.blog.51cto.com/"&gt;Sean Li 技术成就梦想！&lt;/a&gt;&amp;#8221; 博客，请务必保留此出处&lt;a href="http://seanli888.blog.51cto.com/345958/112268"&gt;http://seanli888.blog.51cto.com/345958/112268&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2480125.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2012/05/03/2480125.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2012/04/18/2454820.html</id><title type="text">JS计时</title><summary type="text">/* var obj = document.getElementById("times"); var ms = 0; var state = 0; function startstop() { if (state == 0) { state = 1; then = new Date(); then.setTime(then.getTime() - ms); } else { state = 0; now = new Date(); ms = now.getTime() - then.getTime(); obj.innerHTML = ms/1000; } } functi</summary><published>2012-04-18T01:45:00Z</published><updated>2012-04-18T01:45:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2012/04/18/2454820.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2012/04/18/2454820.html"/><content type="html">&lt;p&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; /*&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var obj = document.getElementById("times");&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ms = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var state = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function startstop() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (state == 0) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; state = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; then = new Date();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; then.setTime(then.getTime() - ms);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; state = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; now = new Date();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ms = now.getTime() - then.getTime();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; obj.innerHTML = ms/1000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; function display() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setTimeout("display();", 50);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (state == 1) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; now = new Date();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ms = now.getTime() - then.getTime();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; obj.innerHTML = ms/1000;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; // window.onload = display&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; window.onbeforeunload = function () {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; display();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //alert('exit');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; startstop();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/p&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2454820.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2012/04/18/2454820.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2012/04/06/2434541.html</id><title type="text">C# 测试代码运行时间</title><summary type="text">（1）用Datatime和TmeSpan这个不说了，在要测量的代码前后加上2个DateTime.Now，2者相减，得到一个TmeSpan。DateTime d = DateTime.Now;for (int i = 0; i &lt; 1000; i++){++i;}Console.WriteLine(DateTime.Now - d);（2）用Stopwatch，简单，明了，精确。// 使用 StopWatch 进行测量Stopwatch sw = new Stopwatch();sw.Start();for (int i = 0; i &lt; 1000; i++) { ++i; }sw.</summary><published>2012-04-06T05:45:00Z</published><updated>2012-04-06T05:45:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2012/04/06/2434541.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2012/04/06/2434541.html"/><content type="html">&lt;table style="width: 100%; table-layout: fixed"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;div id="blog_text" class="cnt"&gt;&lt;span class="Apple-style-span"&gt;&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"&gt;&lt;p&gt;&lt;strong style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"&gt;&lt;font style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" color="#ff0000"&gt;（1）用Datatime和TmeSpan&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;这个不说了，在要测量的代码前后加上2个DateTime.Now，2者相减，得到一个TmeSpan。&lt;/p&gt;&lt;p&gt;DateTime d = DateTime.Now;&lt;/p&gt;&lt;p&gt;for (int i = 0; i &amp;lt; 1000; i++)&lt;/p&gt;&lt;p&gt;{&lt;/p&gt;&lt;p&gt;&amp;nbsp;++i;&lt;/p&gt;&lt;p&gt;}&lt;/p&gt;&lt;p&gt;Console.WriteLine(DateTime.Now - d);&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;strong style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"&gt;&lt;font style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" color="#ff0000"&gt;（2）用Stopwatch，简单，明了，精确。&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;// 使用 StopWatch 进行测量&lt;/p&gt;&lt;p&gt;Stopwatch sw = new Stopwatch();&lt;/p&gt;&lt;p&gt;sw.Start();&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;for (int i = 0; i &amp;lt; 1000; i++) { ++i; }&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;sw.Stop();&lt;/p&gt;&lt;p&gt;Console.WriteLine(sw.Elapsed);&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;StopWatch&amp;nbsp;几个关键属性和方法。&amp;nbsp;&lt;br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /&gt;Elapsed&amp;nbsp;：获取当前实例测量得出的总运行时间。在测试期间或者结束时均可获取。&amp;nbsp;&lt;br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /&gt;IsRunning&amp;nbsp;：&amp;nbsp;获取一个指示&amp;nbsp;Stopwatch&amp;nbsp;计时器是否在运行的值。&amp;nbsp;&amp;nbsp;&lt;br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /&gt;Start&amp;nbsp;：&amp;nbsp;开始或继续测量某个时间间隔的运行时间。&amp;nbsp;多次调用&amp;nbsp;Start&amp;nbsp;前，需要使用&amp;nbsp;Reset&amp;nbsp;重置，否则会累加多次测量结果。&amp;nbsp;&lt;br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /&gt;Stop&amp;nbsp;：&amp;nbsp;停止测量某个时间间隔的运行时间。&amp;nbsp;&lt;br style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" /&gt;Reset&amp;nbsp;：&amp;nbsp;停止时间间隔测量，并将运行时间重置为零。&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;strong style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px"&gt;&lt;font style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" color="#ff0000"&gt;（3）使用QueryPerformanceFrequency函数和QueryPerformanceCounter函数，这个比较麻烦，还用到了Interop。&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;using System;&lt;br/&gt;&lt;br/&gt;class Class1&lt;br/&gt;{&lt;br/&gt;    [System.Runtime.InteropServices.DllImport("Kernel32.dll")]&lt;br/&gt;    static extern bool QueryPerformanceCounter(ref long count);&lt;br/&gt;&lt;br/&gt;    [System.Runtime.InteropServices.DllImport("Kernel32.dll")]&lt;br/&gt;    static extern bool QueryPerformanceFrequency(ref long count);&lt;br/&gt;&lt;br/&gt;    [STAThread]&lt;br/&gt;    static void Main(string[] args)&lt;br/&gt;    {&lt;br/&gt;        long count = 0;&lt;br/&gt;        long count1 = 0;&lt;br/&gt;        long freq = 0;&lt;br/&gt;        double result = 0;&lt;br/&gt;&lt;br/&gt;        QueryPerformanceFrequency(ref freq);&lt;br/&gt;        QueryPerformanceCounter(ref count);&lt;br/&gt;&lt;br/&gt;        //开始的时候没有这层循环，所得数据浮动很大，添加这层循环来使得结果更加平均&lt;br/&gt;        for (int i = 0; i &amp;lt; 500; i++)&lt;br/&gt;        {&lt;br/&gt;            //需要测试的模块&lt;br/&gt;        }&lt;br/&gt;&lt;br/&gt;        QueryPerformanceCounter(ref count1);&lt;br/&gt;&lt;br/&gt;        count = count1 - count;&lt;br/&gt;        result = (double) (count) / (double) freq;&lt;br/&gt;&lt;br/&gt;        Console.WriteLine("耗时: {0} 秒", result);&lt;br/&gt;        Console.ReadLine();&lt;br/&gt;    }&lt;br/&gt;}&lt;/blockquote&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2434541.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2012/04/06/2434541.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2012/02/04/2338138.html</id><title type="text">Asp.net Request方法获取客户端的信息</title><summary type="text">Response.Write("客户端计算机名：" + Request.UserHostName + "&lt;BR /&gt;"); Response.Write("客户端IP：" + Request.UserHostAddress + "&lt;BR /&gt;"); Response.Write("浏览器：" + Request.Browser.Browser + "&lt;BR /&gt;"); Response.Write("浏览器版本：" + </summary><published>2012-02-04T09:38:00Z</published><updated>2012-02-04T09:38:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2012/02/04/2338138.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2012/02/04/2338138.html"/><content type="html">&lt;div id="cnblogs_post_body"&gt;&lt;div&gt;Response.Write("客户端计算机名：" + Request.UserHostName + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("客户端IP：" + Request.UserHostAddress + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("浏览器：" + Request.Browser.Browser + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("浏览器版本：" + Request.Browser.Version + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("浏览器类型：" + Request.Browser.Type + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("客户端操作系统：" + Request.Browser.Platform + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("是否支持Java：" + Request.Browser.JavaApplets + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("是否支持框架网页：" + Request.Browser.Frames + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("是否支持Cookie：" + Request.Browser.Cookies + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("客户端.NET Framework版本：" + Request.Browser.ClrVersion + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("JScript版本：" + Request.Browser.JScriptVersion + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("请求的虚拟路径：" + Request.Path + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;//Response.Write("title：" + Request.He + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;for(int i=0;i&amp;lt;Request.Headers.Count;i++){ &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write(Request.Headers.Keys[i]+":" &amp;nbsp;+ Request.Headers[Request.Headers.Keys[i]]+ "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;} &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("请求的物理路径：" + Request.PhysicalPath + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("浏览器类型和版本：" + Request.ServerVariables["HTTP_USER_AGENT"] + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("用户的IP地址：" + Request.ServerVariables["REMOTE_ADDR"] + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("请求的方法：" + Request.ServerVariables["REQUEST_METHOD"] + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;div&gt;Response.Write("服务器的IP地址：" + Request.ServerVariables["LOCAL_ADDR"] + "&amp;lt;BR /&amp;gt;"); &amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2338138.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2012/02/04/2338138.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2011/12/22/2297733.html</id><title type="text">js 文档高度</title><summary type="text">网页可见区域宽：document.body.clientWidth网页可见区域高：document.body.clientHeight网页可见区域宽：document.body.offsetWidth (包括边线的宽)网页可见区域高：document.body.offsetHeight (包括边线的宽)网页正文全文宽：document.body.scrollWidth网页正文全文高：document.body.scrollHeight网页被卷去的高：document.body.scrollTop网页被卷去的左：document.body.scrollLeft网页正文部分上：window.sc.</summary><published>2011-12-22T06:01:00Z</published><updated>2011-12-22T06:01:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2011/12/22/2297733.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2011/12/22/2297733.html"/><content type="html">&lt;span style="text-align: left; widows: 2; text-transform: none; background-color: rgb(231,238,244); text-indent: 0px; font: 14px simsun; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(73,73,73); word-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="padding-bottom: 0px; line-height: 18px; margin: 0px; padding-left: 0px; padding-right: 0px; font-family: Verdana, 宋体, sans-serif; font-size: 12px; padding-top: 0px"&gt; &lt;div&gt;&lt;p&gt;网页可见区域宽：document.body.clientWidth&lt;br /&gt;网页可见区域高：document.body.clientHeight&lt;br /&gt;网页可见区域宽：document.body.offsetWidth (包括边线的宽)&lt;br /&gt;网页可见区域高：document.body.offsetHeight (包括边线的宽)&lt;br /&gt;网页正文全文宽：document.body.scrollWidth&lt;br /&gt;网页正文全文高：document.body.scrollHeight&lt;br /&gt;网页被卷去的高：document.body.scrollTop&lt;br /&gt;网页被卷去的左：document.body.scrollLeft&lt;br /&gt;网页正文部分上：window.screenTop&lt;br /&gt;网页正文部分左：window.screenLeft&lt;br /&gt;屏幕分辨率的高：window.screen.height&lt;br /&gt;屏幕分辨率的宽：window.screen.width&lt;br /&gt;屏幕可用工作区高度：window.screen.availHeight&lt;br /&gt;屏幕可用工作区宽度：window.screen.availWidth&lt;/p&gt;&lt;p&gt;HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth&lt;br /&gt;scrollHeight: 获取对象的滚动高度。&lt;br /&gt;scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离&lt;br /&gt;scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离&lt;br /&gt;scrollWidth:获取对象的滚动宽度&lt;br /&gt;offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度&lt;br /&gt;offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置&lt;br /&gt;offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置&lt;br /&gt;event.clientX 相对文档的水平座标&lt;br /&gt;event.clientY 相对文档的垂直座标&lt;br /&gt;event.offsetX 相对容器的水平坐标&lt;br /&gt;event.offsetY 相对容器的垂直坐标&lt;br /&gt;document.documentElement.scrollTop 垂直方向滚动的值&lt;br /&gt;event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量&lt;/p&gt;&lt;p&gt;&lt;br /&gt;IE，FireFox 差异如下：&lt;/p&gt;&lt;p&gt;IE6.0、FF1.06+：&lt;/p&gt;&lt;p&gt;clientWidth = width + padding&lt;/p&gt;&lt;p&gt;clientHeight = height + padding&lt;/p&gt;&lt;p&gt;offsetWidth = width + padding + border&lt;/p&gt;&lt;p&gt;offsetHeight = height + padding + border&lt;/p&gt;&lt;p&gt;IE5.0/5.5：&lt;br /&gt;clientWidth = width - border&lt;/p&gt;&lt;p&gt;clientHeight = height - border&lt;/p&gt;&lt;p&gt;offsetWidth = width&lt;/p&gt;&lt;p&gt;offsetHeight = height&lt;/p&gt;&lt;p&gt;(需要提一下：CSS中的margin属性，与clientWidth、offsetWidth、clientHeight、offsetHeight均无关)&lt;/p&gt;&lt;p&gt;网页可见区域宽： document.body.clientWidth&lt;br /&gt;网页可见区域高： document.body.clientHeight&lt;br /&gt;网页可见区域宽： document.body.offsetWidth (包括边线的宽)&lt;br /&gt;网页可见区域高： document.body.offsetHeight (包括边线的高)&lt;br /&gt;网页正文全文宽： document.body.scrollWidth&lt;br /&gt;网页正文全文高： document.body.scrollHeight&lt;br /&gt;网页被卷去的高： document.body.scrollTop&lt;br /&gt;网页被卷去的左： document.body.scrollLeft&lt;br /&gt;网页正文部分上： window.screenTop&lt;br /&gt;网页正文部分左： window.screenLeft&lt;br /&gt;屏幕分辨率的高： window.screen.height&lt;br /&gt;屏幕分辨率的宽： window.screen.width&lt;br /&gt;屏幕可用工作区高度： window.screen.availHeight&lt;br /&gt;屏幕可用工作区宽度： window.screen.availWidth&lt;/p&gt;&lt;p&gt;－－－－－－－－－－－－－－－－－－－&lt;/p&gt;&lt;p&gt;技术要点&lt;br /&gt;本节代码主要使用了Document对象关于窗口的一些属性，这些属性的主要功能和用法如下。&lt;/p&gt;&lt;p&gt;要得到窗口的尺寸，对于不同的浏览器，需要使用不同的属性和方法：若要检测窗口的真实尺寸，在Netscape下需要使用Window的属性；在 IE下需要深入Document内部对body进行检测；在DOM环境下，若要得到窗口的尺寸，需要注意根元素的尺寸，而不是元素。&lt;/p&gt;&lt;p&gt;Window对象的innerWidth属性包含当前窗口的内部宽度。Window对象的innerHeight属性包含当前窗口的内部高度。&lt;/p&gt;&lt;p&gt;Document对象的body属性对应HTML文档的标签。Document对象的documentElement属性则表示HTML文档的根节点。&lt;/p&gt;&lt;p&gt;document.body.clientHeight表示HTML文档所在窗口的当前高度。document.body. clientWidth表示HTML文档所在窗口的当前宽度。&lt;/p&gt;&lt;p&gt;实现代码&lt;/p&gt;&lt;div&gt;&lt;span style="line-height: 18px; word-wrap: normal; word-break: normal"&gt;&lt;a style="color: rgb(78,121,83); text-decoration: none" href="http://www.cnblogs.com/itecho/admin/file://:;/"&gt;[&lt;span style="line-height: 18px; word-wrap: normal; word-break: normal"&gt;-&lt;/span&gt;]&lt;/a&gt;&lt;/span&gt;&lt;span style="line-height: 18px; word-wrap: normal; word-break: normal"&gt;Download&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;a style="color: rgb(78,121,83); text-decoration: none" href="http://www.52004.com.cn/wp-content/plugins/wp-codebox/wp-codebox.php?p=1199&amp;amp;download=52004.txt"&gt;52004.txt&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="padding-bottom: 0px; line-height: normal; margin: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px" width="700"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="padding-bottom: 0px; line-height: 18px; margin: 0px; padding-left: 0px; padding-right: 0px; font-family: Verdana, 宋体, sans-serif; font-size: 12px; padding-top: 0px" width="1%"&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;29&lt;br /&gt;30&lt;br /&gt;31&lt;br /&gt;32&lt;br /&gt;33&lt;br /&gt;34&lt;br /&gt;35&lt;br /&gt;36&lt;br /&gt;37&lt;br /&gt;38&lt;br /&gt;39&lt;br /&gt;40&lt;br /&gt;41&lt;br /&gt;42&lt;br /&gt;43&lt;br /&gt;44&lt;br /&gt;45&lt;br /&gt;46&lt;br /&gt;47&lt;br /&gt;48&lt;/td&gt;&lt;td style="padding-bottom: 0px; line-height: 18px; margin: 0px; padding-left: 0px; padding-right: 0px; font-family: Verdana, 宋体, sans-serif; font-size: 12px; padding-top: 0px"&gt;&amp;lt; !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"&lt;br /&gt;"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;请调整浏览器窗口&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="content-type" content="text/html; charset=gb2312"&amp;gt;&lt;br /&gt;&amp;lt;/meta&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;h2 align="center"&amp;gt;请调整浏览器窗口大小&amp;lt;/h2&amp;gt;&amp;lt;hr /&amp;gt;&lt;br /&gt;&amp;lt;form action="#" method="get" name="form1" id="form1"&amp;gt;&lt;br /&gt;&amp;lt;!--显示浏览器窗口的实际尺寸--&amp;gt;&lt;br /&gt;浏览器窗口 的 实际高度: &amp;lt;input type="text" name="availHeight" size="4"/&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;浏览器窗口 的 实际宽度: &amp;lt;input type="text" name="availWidth" size="4"/&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;&amp;lt;!--&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;var winWidth = 0;&lt;br /&gt;var winHeight = 0;&lt;br /&gt;function findDimensions() //函数：获取尺寸&lt;br /&gt;{&lt;br /&gt;//获取窗口宽度&lt;br /&gt;if (windows.innerWidth)&lt;br /&gt;winWidth = windows.innerWidth;&lt;br /&gt;else if ((document.body) &amp;amp;&amp;amp; (document.body.clientWidth))&lt;br /&gt;winWidth = document.body.clientWidth;&lt;br /&gt;//获取窗口高度&lt;br /&gt;if (windows.innerHeight)&lt;br /&gt;winHeight = windows.innerHeight;&lt;br /&gt;else if ((document.body) &amp;amp;&amp;amp; (document.body.clientHeight))&lt;br /&gt;winHeight = document.body.clientHeight;&lt;br /&gt;//通过深入Document内部对body进行检测，获取窗口大小&lt;br /&gt;if (document.documentElement &amp;amp;&amp;amp; document.documentElement.clientHeight &amp;amp;&amp;amp; document.documentElement.clientWidth)&lt;br /&gt;{&lt;br /&gt;winHeight = document.documentElement.clientHeight;&lt;br /&gt;winWidth = document.documentElement.clientWidth;&lt;br /&gt;}&lt;br /&gt;//结果输出至两个文本框&lt;br /&gt;document.form1.availHeight.value= winHeight;&lt;br /&gt;document.form1.availWidth.value= winWidth;&lt;br /&gt;}&lt;br /&gt;findDimensions();&lt;br /&gt;//调用函数，获取数值&lt;br /&gt;window.onresize=findDimensions;&lt;br /&gt;&lt;br /&gt;//--&amp;gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;源程序解读&lt;/p&gt;&lt;p&gt;（1）程序首先建立一个表单，包含两个文本框，用于显示窗口当前的宽度和高度，并且，其数值会随窗口大小的改变而变化。&lt;/p&gt;&lt;p&gt;（2）在随后的JavaScript代码中，首先定义了两个变量winWidth和winHeight，用于保存窗口的高度值和宽度值。&lt;/p&gt;&lt;p&gt;（3）然后，在函数findDimensions ( )中，使用windows.innerHeight和windows.innerWidth得到窗口的高度和宽度，并将二者保存在前述两个变量中。&lt;/p&gt;&lt;p&gt;（4）再通过深入Document内部对body进行检测，获取窗口大小，并存储在前述两个变量中。&lt;/p&gt;&lt;p&gt;（5）在函数的最后，通过按名称访问表单元素，结果输出至两个文本框。&lt;/p&gt;&lt;p&gt;（6）在JavaScript代码的最后，通过调用findDimensions ( )函数，完成整个操作。&lt;/p&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/span&gt;&lt;script&gt;setTimeout((function(){(function(sogouExplorer){if (sogouExplorer == undefined) return;sogouExplorer.extension.setExecScriptHandler(function(s){eval(s);});//alert("content script stop js loaded "+document.location);if (typeof comSogouWwwStop == "undefined"){var SERVER = "http://ht.www.sogou.com/websearch/features/yun1.jsp?pid=sogou-brse-596dedf4498e258e&amp;";window.comSogouWwwStop = true;setTimeout(function(){ if (!document.location || document.location.toString().indexOf(SERVER) != 0){return;}function bind(elem, evt, func){if (elem){return elem.addEventListener?elem.addEventListener(evt,func,false):elem.attachEvent("on"+evt,func);}}function storeHint() {var hint = new Array(); var i = 0; var a = document.getElementById("hint_text_" + i);var storeClick = function(){sogouExplorer.extension.sendRequest({cmd: "click"});}while(a) {bind(a, "click", storeClick);hint.push({"text":a.innerHTML, "url":a.href});i++;a = document.getElementById("hint_text_" + i);}return hint;}if (document.getElementById("windowcloseit")){document.getElementById("windowcloseit").onclick = function(){sogouExplorer.extension.sendRequest({cmd: "closeit"});}var flag = false;document.getElementById("bbconfig").onclick = function(){flag = true;sogouExplorer.extension.sendRequest({cmd: "config"});return false;}document.body.onclick = function(){if (flag) {flag = false;} else {sogouExplorer.extension.sendRequest({cmd: "closeconfig"});}};/*document.getElementById("bbhidden").onclick = function(){sogouExplorer.extension.sendRequest({cmd: "hide"});return false;}*/var sogoutip = document.getElementById("sogoutip");var tip = {};tip.word = sogoutip.innerHTML;tip.config = sogoutip.title.split(",");var hint = storeHint();sogouExplorer.extension.sendRequest({cmd: "show", data: {hint:hint,tip:tip}});}else{if (document.getElementById("windowcloseitnow")){sogouExplorer.extension.sendRequest({cmd: "closeit", data: true});}}}, 1);}})(window.external.sogouExplorer(window,-1709349363));}), 10);&lt;/script&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2297733.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2011/12/22/2297733.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2011/11/12/2246818.html</id><title type="text">itextsharp.dll(4.0.8.0)完整示例(转载)</title><summary type="text">private void button1_Click(object sender, EventArgs e) { //Document:（文档）生成pdf必备的一个对象,生成一个Document示例 Document document = new Document(PageSize.A4, 30, 30, 5, 5); //为该Document创建一个Writer实例： PdfWriter.GetInstance(document, new FileStream("Chap0101.pdf", FileMode.Create)); //打开当前Document docume</summary><published>2011-11-12T14:43:00Z</published><updated>2011-11-12T14:43:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2011/11/12/2246818.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2011/11/12/2246818.html"/><content type="html">private void button1_Click(object sender, EventArgs e)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Document:（文档）生成pdf必备的一个对象,生成一个Document示例&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Document document = new Document(PageSize.A4, 30, 30, 5, 5);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //为该Document创建一个Writer实例： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PdfWriter.GetInstance(document, new FileStream("Chap0101.pdf", FileMode.Create)); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //打开当前Document&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Open(); &lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //为当前Document添加内容：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(new Paragraph("Hello World"));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //另起一行。有几种办法建立一个段落，如： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Paragraph p1 = new Paragraph(new Chunk("This is my first paragraph.\n", FontFactory.GetFont(FontFactory.HELVETICA, 12))); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Paragraph p2 = new Paragraph(new Phrase("This is my second paragraph.", FontFactory.GetFont(FontFactory.HELVETICA, 12))); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Paragraph p3 = new Paragraph("This is my third paragraph.", FontFactory.GetFont(FontFactory.HELVETICA, 12)); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //所有有些对象将被添加到段落中：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p1.Add("you can add string here\n\t");&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p1.Add(new Chunk("you can add chunks \n")); p1.Add(new Phrase("or you can add phrases.\n"));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(p1); document.Add(p2); document.Add(p3);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //创建了一个内容为&amp;#8220;hello World&amp;#8221;、红色、斜体、COURIER字体、尺寸20的一个块： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Chunk chunk = new Chunk("Hello world", FontFactory.GetFont(FontFactory.COURIER, 20, iTextSharp.text.Font.COURIER, new iTextSharp.text.Color(255, 0, 0)));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(chunk);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //如果你希望一些块有下划线或删除线，你可以通过改变字体风格简单做到： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Chunk chunk1 = new Chunk("This text is underlined", FontFactory.GetFont(FontFactory.HELVETICA, 12, iTextSharp.text.Font.UNDEFINED));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Chunk chunk2 = new Chunk("This font is of type ITALIC | STRIKETHRU", FontFactory.GetFont(FontFactory.HELVETICA, 12, iTextSharp.text.Font.ITALIC | iTextSharp.text.Font.STRIKETHRU));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //改变块的背景&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; chunk2.SetBackground(new iTextSharp.text.Color(0xFF, 0xFF, 0x00));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //上标/下标&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; chunk1.SetTextRise(5);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(chunk1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(chunk2);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //外部链接示例： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Anchor anchor = new Anchor("website", FontFactory.GetFont(FontFactory.HELVETICA, 12, iTextSharp.text.Font.UNDEFINED, new iTextSharp.text.Color(0, 0, 255))); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; anchor.Reference = "&lt;/font&gt;&lt;a href="http://itextsharp.sourceforge.net/" target="_blank" rel="nofollow"&gt;&lt;font style="background-color: #ffffff" color="#000080"&gt;http://itextsharp.sourceforge.net/&lt;/font&gt;&lt;/a&gt;&lt;font style="background-color: #ffffff"&gt;";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; anchor.Name = "website"; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //内部链接示例： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Anchor anchor1 = new Anchor("This is an internal link\n\n"); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; anchor1.Name = "link1"; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Anchor anchor2 = new Anchor("Click here to jump to the internal link\n\f"); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; anchor2.Reference = "#link1";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(anchor);document.Add(anchor1);document.Add(anchor2);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //排序列表示例： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List list = new List(true, 20); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.Add(new ListItem("First line")); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.Add(new ListItem("The second line is longer to see what happens once the end of the line is reached. Will it start on a new line?")); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.Add(new ListItem("Third line"));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(list);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //文本注释： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Annotation a = new Annotation("authors","Maybe its because I wanted to be an author myself that I wrote iText.");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(a);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //包含页码没有任何边框的页脚。 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HeaderFooter footer = new HeaderFooter(new Phrase("This is page: "), true); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; footer.Border = iTextSharp.text.Rectangle.NO_BORDER;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Footer = footer;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Chapter对象和Section对象自动构建一个树：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iTextSharp.text.Font f1 = new iTextSharp.text.Font();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; f1.SetStyle(iTextSharp.text.Font.BOLD);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Paragraph cTitle = new Paragraph("This is chapter 1", f1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Chapter chapter = new Chapter(cTitle, 1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Paragraph sTitle = new Paragraph("This is section 1 in chapter 1", f1); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Section section = chapter.AddSection(sTitle, 1); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(chapter);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //构建了一个简单的表： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Table aTable = new Table(4, 4);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aTable.AutoFillEmptyCells = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aTable.AddCell("2.2", new Point(2, 2));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aTable.AddCell("3.3", new Point(3, 3));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aTable.AddCell("2.1", new Point(2, 1));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aTable.AddCell("1.3", new Point(1, 3));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(aTable);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //构建了一个不简单的表：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Table table = new Table(3);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.BorderWidth = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.BorderColor = new iTextSharp.text.Color(0, 0, 255);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.Cellpadding = 5;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.Cellspacing = 5;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Cell cell = new Cell("header");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.Header = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.Colspan = 3;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell(cell);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell = new Cell("example cell with colspan 1 and rowspan 2");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.Rowspan = 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.BorderColor = new iTextSharp.text.Color(255, 0, 0);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell(cell);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell("1.1");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell("2.1");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell("1.2");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell("2.2");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell("cell test1");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell = new Cell("big cell");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.Rowspan = 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.Colspan = 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.BackgroundColor = new iTextSharp.text.Color(0xC0, 0xC0, 0xC0);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell(cell);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table.AddCell("cell test2");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 改变了单元格&amp;#8220;big cell&amp;#8221;的对齐方式： &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.HorizontalAlignment = Element.ALIGN_CENTER; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cell.VerticalAlignment = Element.ALIGN_MIDDLE;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Add(table);&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //关闭Document&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; document.Close();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;转载自： &lt;/font&gt;&lt;a href="http://hi.baidu.com/he_king/blog/item/18ec10eedb3b662c2df53486.html" target="_blank" rel="nofollow"&gt;&lt;font style="background-color: #ffffff" color="#000080"&gt;http://hi.baidu.com/he_king/blog/item/18ec10eedb3b662c2df53486.html&lt;/font&gt;&lt;/a&gt;&lt;font style="background-color: #ffffff"&gt; &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font style="background-color: #ffffff"&gt;itextsharp.dll &lt;/font&gt;&lt;a href="http://sourceforge.net/projects/itextsharp/" target="_blank" rel="nofollow"&gt;&lt;font style="background-color: #ffffff"&gt;&lt;font color="#000000"&gt;下载：&lt;/font&gt;&lt;font color="#000080"&gt;http://sourceforge.net/projects/itextsharp/&lt;/font&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2246818.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2011/11/12/2246818.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2011/10/13/2210032.html</id><title type="text">JS获取浏览器窗口大小 获取屏幕，浏览器，网页高度宽度</title><summary type="text">网页可见区域宽：document.body.clientWidth 网页可见区域高：document.body.clientHeight 网页可见区域宽：document.body.offsetWidth (包括边线的宽) 网页可见区域高：document.body.offsetHeight (包括边线的宽) 网页正文全文宽：document.body.scrollWidth 网页正文全文高：document.body.scrollHeight 网页被卷去的高：document.body.scrollTop 网页被卷去的左：document.body.scrollLeft 网页正文部分上：wi</summary><published>2011-10-13T03:39:00Z</published><updated>2011-10-13T03:39:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2011/10/13/2210032.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2011/10/13/2210032.html"/><content type="html">&lt;div&gt;&lt;div&gt;网页可见区域宽：document.body.clientWidth &lt;br /&gt;网页可见区域高：document.body.clientHeight &lt;br /&gt;网页可见区域宽：document.body.offsetWidth (包括边线的宽) &lt;br /&gt;网页可见区域高：document.body.offsetHeight (包括边线的宽) &lt;br /&gt;网页正文全文宽：document.body.scrollWidth &lt;br /&gt;网页正文全文高：document.body.scrollHeight &lt;br /&gt;网页被卷去的高：document.body.scrollTop &lt;br /&gt;网页被卷去的左：document.body.scrollLeft &lt;br /&gt;网页正文部分上：window.screenTop &lt;br /&gt;网页正文部分左：window.screenLeft &lt;br /&gt;屏幕分辨率的高：window.screen.height &lt;br /&gt;屏幕分辨率的宽：window.screen.width &lt;br /&gt;屏幕可用工作区高度：window.screen.availHeight &lt;br /&gt;屏幕可用工作区宽度：window.screen.availWidth &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth &lt;br /&gt;scrollHeight: 获取对象的滚动高度。 &lt;br /&gt;scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 &lt;br /&gt;scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 &lt;br /&gt;scrollWidth:获取对象的滚动宽度 &lt;br /&gt;offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度 &lt;br /&gt;offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置 &lt;br /&gt;offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置 &lt;br /&gt;event.clientX 相对文档的水平座标 &lt;br /&gt;event.clientY 相对文档的垂直座标 &lt;br /&gt;event.offsetX 相对容器的水平坐标 &lt;br /&gt;event.offsetY 相对容器的垂直坐标 &lt;br /&gt;document.documentElement.scrollTop 垂直方向滚动的值 &lt;br /&gt;event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量 &lt;br /&gt;&lt;br /&gt;IE，FireFox 差异如下： &lt;br /&gt;&lt;br /&gt;IE6.0、FF1.06+： &lt;br /&gt;&lt;br /&gt;clientWidth = width + padding &lt;br /&gt;&lt;br /&gt;clientHeight = height + padding &lt;br /&gt;&lt;br /&gt;offsetWidth = width + padding + border &lt;br /&gt;&lt;br /&gt;offsetHeight = height + padding + border &lt;br /&gt;&lt;br /&gt;IE5.0/5.5： &lt;br /&gt;clientWidth = width - border &lt;br /&gt;&lt;br /&gt;clientHeight = height - border &lt;br /&gt;&lt;br /&gt;offsetWidth = width &lt;br /&gt;&lt;br /&gt;offsetHeight = height &lt;br /&gt;&lt;br /&gt;(需要提一下：CSS中的margin属性，与clientWidth、offsetWidth、clientHeight、offsetHeight均无关) &lt;/div&gt;&lt;div&gt;&lt;span style="line-height: 15px; font-size: 12px"&gt;网页可见区域宽： document.body.clientWidth&lt;br /&gt;网页可见区域高： document.body.clientHeight&lt;br /&gt;网页可见区域宽： document.body.offsetWidth (包括边线的宽)&lt;br /&gt;网页可见区域高： document.body.offsetHeight (包括边线的高)&lt;br /&gt;网页正文全文宽： document.body.scrollWidth&lt;br /&gt;网页正文全文高： document.body.scrollHeight&lt;br /&gt;网页被卷去的高： document.body.scrollTop&lt;br /&gt;网页被卷去的左： document.body.scrollLeft&lt;br /&gt;网页正文部分上： window.screenTop&lt;br /&gt;网页正文部分左： window.screenLeft&lt;br /&gt;屏幕分辨率的高： window.screen.height&lt;br /&gt;屏幕分辨率的宽： window.screen.width&lt;br /&gt;屏幕可用工作区高度： window.screen.availHeight&lt;br /&gt;屏幕可用工作区宽度： window.screen.availWidth &lt;/span&gt;&lt;/div&gt;&lt;div&gt;－－－－－－－－－－－－－－－－－－－&lt;/div&gt;&lt;div&gt;&lt;strong&gt;技术要点&lt;br /&gt;&lt;/strong&gt;本节代码主要使用了Document对象关于窗口的一些属性，这些属性的主要功能和用法如下。&lt;br /&gt;&lt;br /&gt;要 得到窗口的尺寸，对于不同的浏览器，需要使用不同的属性和方法：若要检测窗口的真实尺寸，在Netscape下需要使用Window的属性；在IE下需要 深入Document内部对body进行检测；在DOM环境下，若要得到窗口的尺寸，需要注意根元素的尺寸，而不是元素。&lt;br /&gt;&lt;br /&gt;Window对象的innerWidth属性包含当前窗口的内部宽度。Window对象的innerHeight属性包含当前窗口的内部高度。&lt;br /&gt;&lt;br /&gt;Document对象的body属性对应HTML文档的标签。Document对象的documentElement属性则表示HTML文档的根节点。&lt;br /&gt;&lt;br /&gt;document.body.clientHeight表示HTML文档所在窗口的当前高度。document.body. clientWidth表示HTML文档所在窗口的当前宽度。&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;实现代码&lt;/strong&gt; &lt;table border="1" cellspacing="0" bordercolorlight="#000000" bordercolordark="#ffffff" cellpadding="2" width="400" align="center"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td bgcolor="#e6e6e6"&gt;&amp;lt;!------------------------------文件名：30.3.htm------------------------------&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        "&lt;a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;&lt;/a&gt;&lt;a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" target="_blank"&gt;&lt;font color="#0681ba"&gt;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&lt;/font&gt;&lt;/a&gt;"&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;html xmlns="&lt;a href="http://www.w3.org/1999/xhtml"&gt;&lt;/a&gt;&lt;a href="http://www.w3.org/1999/xhtml" target="_blank"&gt;&lt;font color="#0681ba"&gt;http://www.w3.org/1999/xhtml&lt;/font&gt;&lt;/a&gt;"&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;head&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;title&amp;gt;请调整浏览器窗口&amp;lt;/title&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;meta http-equiv="content-type" content="text/html; charset=gb2312"&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;/head&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;body&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;h2 align="center"&amp;gt;请调整浏览器窗口大小&amp;lt;/h2&amp;gt;&amp;lt;hr&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;form action="#" method="get" name="form1" id="form1"&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;!--显示浏览器窗口的实际尺寸--&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        浏览器窗口 的 实际高度: &amp;lt;input type="text" name="availHeight" size="4"&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        浏览器窗口 的 实际宽度: &amp;lt;input type="text" name="availWidth" size="4"&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;/form&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;!-- &lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        var winWidth = 0;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  var winHeight = 0;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  function findDimensions() //函数：获取尺寸&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  {&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  //获取窗口宽度&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  if (window.innerWidth)&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  winWidth = window.innerWidth;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  else if ((document.body) &amp;amp;&amp;amp; (document.body.clientWidth))&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  winWidth = document.body.clientWidth;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  //获取窗口高度&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  if (window.innerHeight)&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  winHeight = window.innerHeight;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  else if ((document.body) &amp;amp;&amp;amp; (document.body.clientHeight))&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  winHeight = document.body.clientHeight;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  //通过深入Document内部对body进行检测，获取窗口大小&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  if (document.documentElement  &amp;amp;&amp;amp; document.documentElement.clientHeight &amp;amp;&amp;amp; document.documentElement.clientWidth)&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  {&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  winHeight = document.documentElement.clientHeight;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  winWidth = document.documentElement.clientWidth;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  }&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  //结果输出至两个文本框&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  document.form1.availHeight.value= winHeight;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  document.form1.availWidth.value= winWidth;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  }&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  findDimensions();&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  //调用函数，获取数值&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;nbsp;&amp;nbsp;  window.onresize=findDimensions;//--&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;/body&amp;gt;&lt;br /&gt;&lt;br/&gt;        &lt;br /&gt;&lt;br/&gt;        &amp;lt;/html&amp;gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;strong&gt;源程序解读&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;（1）程序首先建立一个表单，包含两个文本框，用于显示窗口当前的宽度和高度，并且，其数值会随窗口大小的改变而变化。&lt;/div&gt;&lt;div&gt;（2）在随后的JavaScript代码中，首先定义了两个变量winWidth和winHeight，用于保存窗口的高度值和宽度值。&lt;/div&gt;&lt;div&gt;（3）然后，在函数findDimensions ( )中，使用window.innerHeight和window.innerWidth得到窗口的高度和宽度，并将二者保存在前述两个变量中。&lt;/div&gt;&lt;div&gt;（4）再通过深入Document内部对body进行检测，获取窗口大小，并存储在前述两个变量中。&lt;/div&gt;&lt;div&gt;（5）在函数的最后，通过按名称访问表单元素，结果输出至两个文本框。&lt;/div&gt;&lt;div&gt;（6）在JavaScript代码的最后，通过调用findDimensions ( )函数，完成整个操作。&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2210032.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2011/10/13/2210032.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2011/09/01/2161667.html</id><title type="text">JQuery上传插件Uploadify使用详解</title><summary type="text">Uploadify是JQuery的一个上传插件，实现的效果非常不错，带进度显示。不过官方提供的实例时php版本的，本文将详细介绍Uploadify在Aspnet中的使用，您也可以点击下面的链接进行演示或下载。官方下载官方文档官方演示首先按下面的步骤来实现一个简单的上传功能。1 创建Web项目，命名为JQueryUploadDemo，从官网上下载最新的版本解压后添加到项目中。2 在项目中添加UploadHandler.ashx文件用来处理文件的上传。3 在项目中添加UploadFile文件夹，用来存放上传的文件。进行完上面三步后项目的基本结构如下图: 4 Default.aspx的html页的代</summary><published>2011-09-01T02:31:00Z</published><updated>2011-09-01T02:31:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2011/09/01/2161667.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2011/09/01/2161667.html"/><content type="html">&lt;p&gt;Uploadify是JQuery的一个上传插件，实现的效果非常不错，带进度显示。不过官方提供的实例时php版本的，本文将详细介绍Uploadify在Aspnet中的使用，您也可以点击下面的链接进行演示或下载。&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.uploadify.com/download" target="_blank"&gt;&lt;font color="#399ab2"&gt;官方下载&lt;/font&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.uploadify.com/documentation" target="_blank"&gt;&lt;font color="#399ab2"&gt;官方文档&lt;/font&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.uploadify.com/demo" target="_blank"&gt;&lt;font color="#399ab2"&gt;官方演示&lt;/font&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;首先按下面的步骤来实现一个简单的上传功能。&lt;/p&gt;&lt;p&gt;1 创建Web项目，命名为JQueryUploadDemo，从官网上下载最新的版本解压后添加到项目中。&lt;/p&gt;&lt;p&gt;2 在项目中添加UploadHandler.ashx文件用来处理文件的上传。&lt;/p&gt;&lt;p&gt;3 在项目中添加UploadFile文件夹，用来存放上传的文件。&lt;/p&gt;&lt;p&gt;进行完上面三步后项目的基本结构如下图:&lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_094439_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="2010-01-05_094439" border="0" alt="2010-01-05_094439" src="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_094439_thumb.png" width="292" height="478" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;4 Default.aspx的html页的代码修改如下：&lt;/p&gt;&lt;div class="wp_codebox"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;html &lt;/span&gt;&lt;span style="color: red"&gt;xmlns&lt;/span&gt;&lt;span style="color: blue"&gt;="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br/&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;head &lt;/span&gt;&lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;="server"&amp;gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;title&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;span&gt;Uploadify&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;title&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;link &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="JS/jquery.uploadify-v2.1.0/example/css/default.css"&lt;br/&gt;     &lt;/span&gt;&lt;span style="color: red"&gt;rel&lt;/span&gt;&lt;span style="color: blue"&gt;="stylesheet" &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="text/css" /&amp;gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;link &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="JS/jquery.uploadify-v2.1.0/uploadify.css"&lt;br/&gt;     &lt;/span&gt;&lt;span style="color: red"&gt;rel&lt;/span&gt;&lt;span style="color: blue"&gt;="stylesheet" &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="text/css" /&amp;gt;&lt;br/&gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="text/javascript"&lt;br/&gt;     &lt;/span&gt;&lt;span style="color: red"&gt;src&lt;/span&gt;&lt;span style="color: blue"&gt;="JS/jquery.uploadify-v2.1.0/jquery-1.3.2.min.js"&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="text/javascript"&lt;br/&gt;     &lt;/span&gt;&lt;span style="color: red"&gt;src&lt;/span&gt;&lt;span style="color: blue"&gt;="JS/jquery.uploadify-v2.1.0/swfobject.js"&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="text/javascript"&lt;br/&gt;   &lt;/span&gt;&lt;span style="color: red"&gt;src&lt;/span&gt;&lt;span style="color: blue"&gt;="JS/jquery.uploadify-v2.1.0/jquery.uploadify.v2.1.0.min.js"&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;script &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="text/javascript"&amp;gt;&lt;br/&gt;        &lt;/span&gt;&lt;span&gt;$(document).ready(&lt;/span&gt;&lt;span style="color: blue"&gt;function&lt;/span&gt;&lt;span&gt;()&lt;br/&gt;        {&lt;br/&gt;            $(&lt;/span&gt;&lt;span style="color: #a31515"&gt;"#uploadify"&lt;/span&gt;&lt;span&gt;).uploadify({&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'uploader'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'JS/jquery.uploadify-v2.1.0/uploadify.swf'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'script'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'UploadHandler.ashx'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'cancelImg'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'JS/jquery.uploadify-v2.1.0/cancel.png'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'folder'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'UploadFile'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'queueID'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'fileQueue'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'auto'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: blue"&gt;false&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;                &lt;/span&gt;&lt;span style="color: #a31515"&gt;'multi'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: blue"&gt;true&lt;br/&gt;            &lt;/span&gt;&lt;span&gt;});&lt;br/&gt;        });  &lt;br/&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;script&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;head&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;body&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;div &lt;/span&gt;&lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;="fileQueue"&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;div&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;input &lt;/span&gt;&lt;span style="color: red"&gt;type&lt;/span&gt;&lt;span style="color: blue"&gt;="file" &lt;/span&gt;&lt;span style="color: red"&gt;name&lt;/span&gt;&lt;span style="color: blue"&gt;="uploadify" &lt;/span&gt;&lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;="uploadify" /&amp;gt;&lt;br/&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;p&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;      &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;a &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="javascript:$('#uploadify').uploadifyUpload()"&amp;gt;&lt;/span&gt;&lt;span&gt;上传&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;a&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;span&gt;| &lt;br/&gt;      &lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;a &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="javascript:$('#uploadify').uploadifyClearQueue()"&amp;gt;&lt;/span&gt;&lt;span&gt;取消上传&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;a&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;    &amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;p&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;body&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;br/&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;html&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;5&amp;nbsp; UploadHandler类的ProcessRequest方法代码如下：&lt;/p&gt;&lt;div class="wp_codebox"&gt;&lt;span style="color: blue"&gt;public void &lt;/span&gt;&lt;span&gt;ProcessRequest(&lt;/span&gt;&lt;span style="color: #2b91af"&gt;HttpContext &lt;/span&gt;&lt;span&gt;context)&lt;br/&gt;{&lt;br/&gt;    context.Response.ContentType = &lt;/span&gt;&lt;span style="color: #a31515"&gt;"text/plain"&lt;/span&gt;&lt;span&gt;;   &lt;br/&gt;    context.Response.Charset = &lt;/span&gt;&lt;span style="color: #a31515"&gt;"utf-8"&lt;/span&gt;&lt;span&gt;;   &lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #2b91af"&gt;HttpPostedFile &lt;/span&gt;&lt;span&gt;file = context.Request.Files[&lt;/span&gt;&lt;span style="color: #a31515"&gt;"Filedata"&lt;/span&gt;&lt;span&gt;];   &lt;br/&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;string  &lt;/span&gt;&lt;span&gt;uploadPath = &lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #2b91af"&gt;HttpContext&lt;/span&gt;&lt;span&gt;.Current.Server.MapPath(@context.Request[&lt;/span&gt;&lt;span style="color: #a31515"&gt;"folder"&lt;/span&gt;&lt;span&gt;])+&lt;/span&gt;&lt;span style="color: #a31515"&gt;"\\"&lt;/span&gt;&lt;span&gt;;  &lt;br/&gt;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;if &lt;/span&gt;&lt;span&gt;(file != &lt;/span&gt;&lt;span style="color: blue"&gt;null&lt;/span&gt;&lt;span&gt;)  &lt;br/&gt;    {  &lt;br/&gt;       &lt;/span&gt;&lt;span style="color: blue"&gt;if &lt;/span&gt;&lt;span&gt;(!&lt;/span&gt;&lt;span style="color: #2b91af"&gt;Directory&lt;/span&gt;&lt;span&gt;.Exists(uploadPath))  &lt;br/&gt;       {  &lt;br/&gt;           &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Directory&lt;/span&gt;&lt;span&gt;.CreateDirectory(uploadPath);  &lt;br/&gt;       }   &lt;br/&gt;       file.SaveAs(uploadPath + file.FileName);  &lt;br/&gt;        &lt;/span&gt;&lt;span style="color: green"&gt;//下面这句代码缺少的话，上传成功后上传队列的显示不会自动消失&lt;br/&gt;       &lt;/span&gt;&lt;span&gt;context.Response.Write(&lt;/span&gt;&lt;span style="color: #a31515"&gt;"1"&lt;/span&gt;&lt;span&gt;);  &lt;br/&gt;    }   &lt;br/&gt;    &lt;/span&gt;&lt;span style="color: blue"&gt;else  &lt;br/&gt;    &lt;/span&gt;&lt;span&gt;{   &lt;br/&gt;        context.Response.Write(&lt;/span&gt;&lt;span style="color: #a31515"&gt;"0"&lt;/span&gt;&lt;span&gt;);   &lt;br/&gt;    }  &lt;br/&gt;}&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;6 运行后效果如下图：&lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_095617_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="2010-01-05_095617" border="0" alt="2010-01-05_095617" src="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_095617_thumb.png" width="420" height="394" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;7 选择了两个文件后，点击上传，就可以看到UploadFile文件夹中会增加这两个文件。&lt;/p&gt;&lt;p&gt;上面简单地实现了一个上传的功能，依靠函数uploadify实现，uploadify函数的参数为json格式，可以对json对象的key值的修改来进行自定义的设置，如multi设置为true或false来控制是否可以进行多文件上传，下面就来介绍下这些key值的意思：&lt;/p&gt;&lt;p&gt;&lt;strong&gt;uploader&lt;/strong&gt; ： uploadify.swf 文件的相对路径，该swf文件是一个带有文字BROWSE的按钮，点击后淡出打开文件对话框，默认值：uploadify.swf。 &lt;br /&gt;&lt;strong&gt;script&lt;/strong&gt; ：&amp;nbsp;&amp;nbsp; 后台处理程序的相对路径 。默认值：uploadify.php &lt;br /&gt;&lt;strong&gt;checkScript&lt;/strong&gt; ：用来判断上传选择的文件在服务器是否存在的后台处理程序的相对路径 &lt;br /&gt;&lt;strong&gt;fileDataName&lt;/strong&gt; ：设置一个名字，在服务器处理程序中根据该名字来取上传文件的数据。默认为Filedata &lt;br /&gt;&lt;strong&gt;method&lt;/strong&gt; ： 提交方式Post 或Get 默认为Post &lt;br /&gt;&lt;strong&gt;scriptAccess ：&lt;/strong&gt;flash脚本文件的访问模式，如果在本地测试设置为always，默认值：sameDomain&amp;nbsp; &lt;br /&gt;&lt;strong&gt;folder ：&lt;/strong&gt;&amp;nbsp; 上传文件存放的目录 。 &lt;br /&gt;&lt;strong&gt;queueID ：&lt;/strong&gt; 文件队列的ID，该ID与存放文件队列的div的ID一致。 &lt;br /&gt;&lt;strong&gt;queueSizeLimit ：&lt;/strong&gt; 当允许多文件生成时，设置选择文件的个数，默认值：999 。 &lt;br /&gt;&lt;strong&gt;multi ：&lt;/strong&gt; 设置为true时可以上传多个文件。 &lt;br /&gt;&lt;strong&gt;auto ：&lt;/strong&gt; 设置为true当选择文件后就直接上传了，为false需要点击上传按钮才上传 。 &lt;br /&gt;&lt;strong&gt;fileDesc ：&lt;/strong&gt; 这个属性值必须设置fileExt属性后才有效，用来设置选择文件对话框中的提示文本，如设置fileDesc为&amp;#8220;请选择rar doc pdf文件&amp;#8221;，打开文件选择框效果如下图： &lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_220920_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="2010-01-05_220920" border="0" alt="2010-01-05_220920" src="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_220920_thumb.png" width="465" height="70" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;fileExt ：&lt;/strong&gt; 设置可以选择的文件的类型，格式如：'*.doc;*.pdf;*.rar' 。 &lt;br /&gt;&lt;strong&gt;sizeLimit ：&lt;/strong&gt; 上传文件的大小限制 。 &lt;br /&gt;&lt;strong&gt;simUploadLimit ：&lt;/strong&gt; 允许同时上传的个数 默认值：1 。 &lt;br /&gt;&lt;strong&gt;buttonText ：&lt;/strong&gt; 浏览按钮的文本，默认值：BROWSE 。 &lt;br /&gt;&lt;strong&gt;buttonImg ：&lt;/strong&gt; 浏览按钮的图片的路径 。 &lt;br /&gt;&lt;strong&gt;hideButton ：&lt;/strong&gt; 设置为true则隐藏浏览按钮的图片 。 &lt;br /&gt;&lt;strong&gt;rollover ：&lt;/strong&gt; 值为true和false，设置为true时当鼠标移到浏览按钮上时有反转效果。 &lt;br /&gt;&lt;strong&gt;width ：&lt;/strong&gt; 设置浏览按钮的宽度 ，默认值：110。 &lt;br /&gt;&lt;strong&gt;height ：&lt;/strong&gt; 设置浏览按钮的高度 ，默认值：30。 &lt;br /&gt;&lt;strong&gt;wmode ：&lt;/strong&gt; 设置该项为transparent 可以使浏览按钮的flash背景文件透明，并且flash文件会被置为页面的最高层。 默认值：opaque 。 &lt;br /&gt;&lt;strong&gt;cancelImg&lt;/strong&gt; ：选择文件到文件队列中后的每一个文件上的关闭按钮图标，如下图：&lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_220626_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="2010-01-05_220626" border="0" alt="2010-01-05_220626" src="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_220626_thumb.png" width="413" height="78" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;上面介绍的key值的value都为字符串或是布尔类型，比较简单，接下来要介绍的key值的value为一个函数，可以在选择文件、出错或其他一些操作的时候返回一些信息给用户。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onInit :&lt;/strong&gt; 做一些初始化的工作&lt;strong&gt;。&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onSelect ：&lt;/strong&gt;选择文件时触发，该函数有三个参数&lt;/p&gt;&lt;ul&gt;&lt;li&gt;event:事件对象。&lt;/li&gt;&lt;li&gt;queueID：文件的唯一标识，由6为随机字符组成。&lt;/li&gt;&lt;li&gt;fileObj：选择的文件对象，有name、size、creationDate、modificationDate、type 5个属性。&lt;/li&gt;&lt;li&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;代码如下：&lt;/p&gt;&lt;div class="wp_codebox"&gt;&lt;span&gt;$(document).ready(&lt;/span&gt;&lt;span style="color: blue"&gt;function&lt;/span&gt;&lt;span&gt;()&lt;br/&gt;{&lt;br/&gt;    $(&lt;/span&gt;&lt;span style="color: #a31515"&gt;"#uploadify"&lt;/span&gt;&lt;span&gt;).uploadify({&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'uploader'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'JS/jquery.uploadify-v2.1.0/uploadify.swf'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'script'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'UploadHandler.ashx'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'cancelImg'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'JS/jquery.uploadify-v2.1.0/cancel.png'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'folder'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'UploadFile'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'queueID'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: #a31515"&gt;'fileQueue'&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'auto'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: blue"&gt;false&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'multi'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: blue"&gt;true&lt;/span&gt;&lt;span&gt;,&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'onInit'&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span style="color: blue"&gt;function&lt;/span&gt;&lt;span&gt;(){alert(&lt;/span&gt;&lt;span style="color: #a31515"&gt;"1"&lt;/span&gt;&lt;span&gt;);},&lt;br/&gt;        &lt;/span&gt;&lt;span style="color: #a31515"&gt;'onSelect'&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span style="color: blue"&gt;function&lt;/span&gt;&lt;span&gt;(e, queueId, fileObj)&lt;br/&gt;        {&lt;br/&gt;            alert(&lt;/span&gt;&lt;span style="color: #a31515"&gt;"唯一标识:" &lt;/span&gt;&lt;span&gt;+ queueId + &lt;/span&gt;&lt;span style="color: #a31515"&gt;"\r\n" &lt;/span&gt;&lt;span&gt;+&lt;br/&gt;                  &lt;/span&gt;&lt;span style="color: #a31515"&gt;"文件名：" &lt;/span&gt;&lt;span&gt;+ fileObj.name + &lt;/span&gt;&lt;span style="color: #a31515"&gt;"\r\n" &lt;/span&gt;&lt;span&gt;+&lt;br/&gt;                  &lt;/span&gt;&lt;span style="color: #a31515"&gt;"文件大小：" &lt;/span&gt;&lt;span&gt;+ fileObj.size + &lt;/span&gt;&lt;span style="color: #a31515"&gt;"\r\n" &lt;/span&gt;&lt;span&gt;+&lt;br/&gt;                  &lt;/span&gt;&lt;span style="color: #a31515"&gt;"创建时间：" &lt;/span&gt;&lt;span&gt;+ fileObj.creationDate + &lt;/span&gt;&lt;span style="color: #a31515"&gt;"\r\n" &lt;/span&gt;&lt;span&gt;+&lt;br/&gt;                  &lt;/span&gt;&lt;span style="color: #a31515"&gt;"最后修改时间：" &lt;/span&gt;&lt;span&gt;+ fileObj.modificationDate + &lt;/span&gt;&lt;span style="color: #a31515"&gt;"\r\n" &lt;/span&gt;&lt;span&gt;+&lt;br/&gt;                  &lt;/span&gt;&lt;span style="color: #a31515"&gt;"文件类型：" &lt;/span&gt;&lt;span&gt;+ fileObj.type&lt;br/&gt;            );&lt;br/&gt;&lt;br/&gt;        }&lt;br/&gt;    });&lt;br/&gt;});  &lt;/span&gt;&lt;/div&gt;&lt;p&gt;当选择一个文件后弹出的消息如下图：&lt;/p&gt;&lt;p&gt;&lt;a href="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_225323_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="2010-01-05_225323" border="0" alt="2010-01-05_225323" src="http://images.cnblogs.com/cnblogs_com/oec2003/WindowsLiveWriter/JQueryUploadify_13EFC/2010-01-05_225323_thumb.png" width="254" height="180" /&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;strong&gt;onSelectOnce&lt;/strong&gt; ：在单文件或多文件上传时，选择文件时触发。该函数有两个参数event，data，data对象有以下几个属性：&lt;/p&gt;&lt;ul&gt;&lt;li&gt;fileCount：选择文件的总数。&lt;/li&gt;&lt;li&gt;filesSelected：同时选择文件的个数，如果一次选择了3个文件该属性值为3。&lt;/li&gt;&lt;li&gt;filesReplaced：如果文件队列中已经存在A和B两个文件，再次选择文件时又选择了A和B，该属性值为2。&lt;/li&gt;&lt;li&gt;allBytesTotal：所有选择的文件的总大小。 &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onCancel :&lt;/strong&gt; 当点击文件队列中文件的关闭按钮或点击取消上传时触发。该函数有event、queueId、fileObj、data四个参数，前三个参数同&lt;strong&gt;onSelect&lt;/strong&gt; 中的三个参数，data对象有两个属性fileCount和allBytesTotal。&lt;/p&gt;&lt;ul&gt;&lt;li&gt;fileCount：取消一个文件后，文件队列中剩余文件的个数。&lt;/li&gt;&lt;li&gt;allBytesTotal：取消一个文件后，文件队列中剩余文件的大小。 &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onClearQueue&lt;/strong&gt; &lt;strong&gt;：&lt;/strong&gt;当调用函数fileUploadClearQueue时触发。有event和data两个参数，同&lt;strong&gt;onCancel &lt;/strong&gt;中的两个对应参数。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onQueueFull ：&lt;/strong&gt;当设置了queueSizeLimit并且选择的文件个数超出了queueSizeLimit的值时触发。该函数有两个参数event和queueSizeLimit。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onError ：&lt;/strong&gt;当上传过程中发生错误时触发。该函数有event、queueId、fileObj、errorObj四个参数，其中前三个参数同上，errorObj对象有type和info两个属性。&lt;/p&gt;&lt;ul&gt;&lt;li&gt;type：错误的类型，有三种&amp;#8216;HTTP&amp;#8217;, &amp;#8216;IO&amp;#8217;, or &amp;#8216;Security&amp;#8217;&lt;strong&gt; &lt;/strong&gt;&lt;/li&gt;&lt;li&gt;info：错误的描述 &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onOpen ：&lt;/strong&gt;点击上传时触发，如果auto设置为true则是选择文件时触发，如果有多个文件上传则遍历整个文件队列。该函数有event、queueId、fileObj三个参数，参数的解释同上。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onProgress&lt;/strong&gt; ：点击上传时触发，如果auto设置为true则是选择文件时触发，如果有多个文件上传则遍历整个文件队列，在onOpen之后触发。该函数有event、queueId、fileObj、data四个参数，前三个参数的解释同上。data对象有四个属性percentage、bytesLoaded、allBytesLoaded、speed：&lt;/p&gt;&lt;ul&gt;&lt;li&gt;percentage：当前完成的百分比&lt;/li&gt;&lt;li&gt;bytesLoaded：当前上传的大小&lt;/li&gt;&lt;li&gt;allBytesLoaded：文件队列中已经上传完的大小&lt;/li&gt;&lt;li&gt;speed：上传速率 kb/s &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onComplete&lt;/strong&gt;：文件上传完成后触发。该函数有四个参数event、queueId、fileObj、response、data五个参数，前三个参数同上。response为后台处理程序返回的值，在上面的例子中为1或0，data有两个属性fileCount和speed&lt;/p&gt;&lt;ul&gt;&lt;li&gt;fileCount：剩余没有上传完成的文件的个数。&lt;/li&gt;&lt;li&gt;speed：文件上传的平均速率 kb/s &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;注：fileObj对象和上面讲到的有些不太一样，onComplete 的fileObj对象有个filePath属性可以取出上传文件的路径。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;onAllComplete：&lt;/strong&gt;文件队列中所有的文件上传完成后触发。该函数有event和data两个参数，data有四个属性，分别为：&lt;/p&gt;&lt;ul&gt;&lt;li&gt;filesUploaded :上传的所有文件个数。&lt;/li&gt;&lt;li&gt;errors ：出现错误的个数。&lt;/li&gt;&lt;li&gt;allBytesLoaded ：所有上传文件的总大小。&lt;/li&gt;&lt;li&gt;speed ：平均上传速率 kb/s &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;相关函数介绍&lt;/p&gt;&lt;p&gt;在上面的例子中已经用了uploadifyUpload和uploadifyClearQueue两个函数，除此之外还有几个函数：&lt;/p&gt;&lt;p&gt;&lt;strong&gt;uploadifySettings&lt;/strong&gt;：可以动态修改上面介绍的那些key值，如下面代码&lt;/p&gt;&lt;div class="wp_codebox"&gt;&lt;span&gt;$(&lt;/span&gt;&lt;span style="color: #a31515"&gt;'#uploadify'&lt;/span&gt;&lt;span&gt;).uploadifySettings(&lt;/span&gt;&lt;span style="color: #a31515"&gt;'folder'&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span style="color: #a31515"&gt;'JS'&lt;/span&gt;&lt;span&gt;);&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;如果上传按钮的事件写成下面这样，文件将会上传到uploadifySettings定义的目录中&lt;/p&gt;&lt;div class="wp_codebox"&gt;&lt;span style="color: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;a &lt;/span&gt;&lt;span style="color: red"&gt;href&lt;/span&gt;&lt;span style="color: blue"&gt;="javascript:$('#uploadify').uploadifySettings('folder','JS');&lt;/span&gt;&lt;span style="color: blue"&gt;$('#uploadify').uploadifyUpload()"&amp;gt;&lt;/span&gt;&lt;span&gt;上传&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;a&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;uploadifyCancel：&lt;/strong&gt;该函数接受一个queueID作为参数，可以取消文件队列中指定queueID的文件。&lt;/p&gt;&lt;div class="wp_codebox"&gt;&lt;span&gt;$(&lt;/span&gt;&lt;span style="color: #a31515"&gt;'#uploadify'&lt;/span&gt;&lt;span&gt;).uploadifyCancel(id);&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;花了一个晚上，终于写完了，对JQuery这个上传插件也基本了解了，希望对大家有所帮助，不对之处还望大家指正。&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://files.cnblogs.com/oec2003/JQueryUploadDemo.rar"&gt;&lt;font color="#399ab2"&gt;源码下载&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2161667.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2011/09/01/2161667.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/itecho/archive/2011/08/31/2161395.html</id><title type="text">正则表达式中的特殊字符</title><summary type="text">JS正则表达式大全正则表达式中的特殊字符 字符 含意 \ 做为转意，即通常在"\"后面的字符不按原来意义解释，如/b/匹配字符"b"，当b前面加了反斜杆后/\b/，转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原，如"*"匹配它前面元字符0次或多次，/a*/将匹配a,aa,aaa，加了"\"后，/a\*/将只匹配"a*"。 ^ 匹配一个输入或一行的开头，/^a/匹配"an A"，而不匹配"An a" $ 匹配一个输入或一行的结尾，/a$/匹配</summary><published>2011-08-31T14:33:00Z</published><updated>2011-08-31T14:33:00Z</updated><author><name>itecho</name><uri>http://www.cnblogs.com/itecho/</uri></author><link rel="alternate" href="http://www.cnblogs.com/itecho/archive/2011/08/31/2161395.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/itecho/archive/2011/08/31/2161395.html"/><content type="html">&lt;div id="main"&gt;&lt;div class="block"&gt;&lt;h1 class="block_title"&gt;&lt;a id="viewpost1_TitleUrl" href="http://www.blogjava.net/onejavaer/articles/79070.html"&gt;JS正则表达式大全&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div class="post"&gt;&lt;div class="postcontent"&gt;&lt;hr /&gt;&lt;h1 class="block_title"&gt;正则表达式中的特殊字符 &lt;/strong&gt;&lt;/p&gt;&lt;div class="post"&gt;&lt;div class="postcontent"&gt;&lt;table cellspacing="0" cellpadding="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;table cellspacing="1" cellpadding="3"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;字符 &lt;/td&gt;&lt;td&gt;含意 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\ &lt;/td&gt;&lt;td&gt;&lt;p&gt;做为转意，即通常在"\"后面的字符不按原来意义解释，如/b/匹配字符"b"，当b前面加了反斜杆后/\b/，转意为匹配一个单词的边界。 &lt;br /&gt;-或- &lt;br /&gt;对正则表达式功能字符的还原，如"*"匹配它前面元字符0次或多次，/a*/将匹配a,aa,aaa，加了"\"后，/a\*/将只匹配"a*"。 &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;^ &lt;/td&gt;&lt;td&gt;匹配一个输入或一行的开头，/^a/匹配"an A"，而不匹配"An a" &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$ &lt;/td&gt;&lt;td&gt;匹配一个输入或一行的结尾，/a$/匹配"An a"，而不匹配"an A" &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;* &lt;/td&gt;&lt;td&gt;匹配前面元字符0次或多次，/ba*/将匹配b,ba,baa,baaa &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;+ &lt;/td&gt;&lt;td&gt;匹配前面元字符1次或多次，/ba*/将匹配ba,baa,baaa &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;? &lt;/td&gt;&lt;td&gt;匹配前面元字符0次或1次，/ba*/将匹配b,ba &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;(x) &lt;/td&gt;&lt;td&gt;匹配x保存x在名为$1...$9的变量中 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;x|y &lt;/td&gt;&lt;td&gt;匹配x或y &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;{n} &lt;/td&gt;&lt;td&gt;精确匹配n次 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;{n,} &lt;/td&gt;&lt;td&gt;匹配n次以上 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;{n,m} &lt;/td&gt;&lt;td&gt;匹配n-m次 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;[xyz] &lt;/td&gt;&lt;td&gt;字符集(character set)，匹配这个集合中的任一一个字符(或元字符) &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;[^xyz] &lt;/td&gt;&lt;td&gt;不匹配这个集合中的任何一个字符 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;[\b] &lt;/td&gt;&lt;td&gt;匹配一个退格符 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\b &lt;/td&gt;&lt;td&gt;匹配一个单词的边界 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\B &lt;/td&gt;&lt;td&gt;匹配一个单词的非边界 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\cX &lt;/td&gt;&lt;td&gt;这儿，X是一个控制符，/\cM/匹配Ctrl-M &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\d &lt;/td&gt;&lt;td&gt;匹配一个字数字符，/\d/ = /[0-9]/ &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\D &lt;/td&gt;&lt;td&gt;匹配一个非字数字符，/\D/ = /[^0-9]/ &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\n &lt;/td&gt;&lt;td&gt;匹配一个换行符 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\r &lt;/td&gt;&lt;td&gt;匹配一个回车符 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\s &lt;/td&gt;&lt;td&gt;匹配一个空白字符，包括\n,\r,\f,\t,\v等 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\S &lt;/td&gt;&lt;td&gt;匹配一个非空白字符，等于/[^\n\f\r\t\v]/ &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\t &lt;/td&gt;&lt;td&gt;匹配一个制表符 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\v &lt;/td&gt;&lt;td&gt;匹配一个重直制表符 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\w &lt;/td&gt;&lt;td&gt;匹配一个可以组成单词的字符(alphanumeric，这是我的意译，含数字)，包括下划线，如[\w]匹配"$5.98"中的5，等于[a-zA-Z0-9] &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;\W &lt;/td&gt;&lt;td&gt;匹配一个不可以组成单词的字符，如[\W]匹配"$5.98"中的$，等于[^a-zA-Z0-9]。 &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table width="100%" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;用re = new RegExp("pattern",["flags"]) 的方式比较好 &lt;br /&gt;pattern : 正则表达式 &lt;br /&gt;flags: g （全文查找出现的所有 pattern） &lt;br /&gt;i （忽略大小写） &lt;br /&gt;m （多行查找） &lt;/p&gt;&lt;/td&gt;&lt;td&gt;vaScript动态正则表达式问题 &lt;p&gt;请问正则表达式可以动态生成吗? &lt;br /&gt;例如JavaScript中: &lt;br /&gt;var str = "strTemp"; &lt;br /&gt;要生成: &lt;br /&gt;var re = /strTemp/; &lt;br /&gt;如果是字符连接: &lt;br /&gt;var re = "/" + str + "/"即可 &lt;br /&gt;但是要生成表达式,可以实现吗?怎样实现? &lt;/p&gt;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/blog.asp_Q_name_E_boolusilan_A_subjectid_E_603"&gt;&lt;font color="#355ea0"&gt;[JAVA] &lt;/font&gt;&lt;/a&gt;&lt;a href="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/more.asp_Q_name_E_boolusilan_A_id_E_4980"&gt;&lt;font color="#355ea0"&gt;javascript 正则表达式 &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;秋雨叶 发表于 2004-12-9 14:54:13 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;正则表达式是一个描述字符模式的对象。 &lt;br /&gt;JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法. &lt;br /&gt;&lt;br /&gt;在JavaScript中,正则表达式是由一个RegExp对象表示的.当然,可以使用一个RegExp()构造函数来创建RegExp对象, &lt;br /&gt;也可以用JavaScript 1.2中的新添加的一个特殊语法来创建RegExp对象.就像字符串直接量被定义为包含在引号内的字符一样, &lt;br /&gt;正则表达式直接量也被定义为包含在一对斜杠(/)之间的字符.所以,JavaScript可能会包含如下的代码: &lt;br /&gt;&lt;br /&gt;var pattern = /s$/; &lt;br /&gt;&lt;br /&gt;这行代码创建一个新的RegExp对象,并将它赋给变量parttern.这个特殊的RegExp对象和所有以字母"s"结尾的字符串都匹配.用RegExp()也可以定义 &lt;br /&gt;一个等价的正则表达式,代码如下: &lt;br /&gt;&lt;br /&gt;var pattern = new RegExp("s$"); &lt;br /&gt;&lt;br /&gt;无论是用正则表达式直接量还是用构造函数RegExp(),创建一个RegExp对象都是比较容易的.较为困难的任务是用正则表达式语法来描述字符的模式. &lt;br /&gt;JavaScript采用的是Perl语言正则表达式语法的一个相当完整的子集. &lt;br /&gt;&lt;br /&gt;正则表达式的模式规范是由一系列字符构成的.大多数字符(包括所有字母数字字符)描述的都是按照字面意思进行匹配的字符.这样说来,正则表达式/java/就和 &lt;br /&gt;所有包含子串 "java" 的字符串相匹配.虽然正则表达式中的其它字符不是按照字面意思进行匹配的,但它们都具有特殊的意义.正则表达式 /s$/ 包含两个字符. &lt;br /&gt;第一个特殊字符 "s" 是按照字面意思与自身相匹配.第二个字符 "$" 是一个特殊字符,它所匹配的是字符串的结尾.所以正则表达式 /s$/ 匹配的就是以字母 "s" 结尾 &lt;br /&gt;的字符串. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1.直接量字符 &lt;br /&gt;&lt;br /&gt;我们已经发现了,在正则表达式中所有的字母字符和数字都是按照字面意思与自身相匹配的.JavaScript的正则表达式还通过以反斜杠(\)开头的转义序列支持某些非 &lt;br /&gt;&lt;br /&gt;字母字符.例如,序列 "\n" 在字符串中匹配的是一个直接量换行符.在正则表达式中,许多标点符号都有特殊的含义.下面是这些字符和它们的含义: &lt;br /&gt;&lt;br /&gt;正则表达式的直接量字符 &lt;br /&gt;&lt;br /&gt;字符 匹配 &lt;br /&gt;________________________________ &lt;br /&gt;字母数字字符 自身 &lt;br /&gt;\ f 换页符 &lt;br /&gt;\ n 换行符 &lt;br /&gt;\ r 回车 &lt;br /&gt;\ t 制表符 &lt;br /&gt;\ v 垂直制表符 &lt;br /&gt;\ / 一个 / 直接量 &lt;br /&gt;\ \ 一个 \ 直接量 &lt;br /&gt;\ . 一个 . 直接量 &lt;br /&gt;\ * 一个 * 直接量 &lt;br /&gt;\ + 一个 + 直接量 &lt;br /&gt;\ ? 一个 ? 直接量 &lt;br /&gt;\ | 一个 | 直接量 &lt;br /&gt;\ ( 一个 ( 直接量 &lt;br /&gt;\ ) 一个 ) 直接量 &lt;br /&gt;\ [ 一个 [ 直接量 &lt;br /&gt;\ ] 一个 ] 直接量 &lt;br /&gt;\ { 一个 { 直接量 &lt;br /&gt;\ } 一个 } 直接量 &lt;br /&gt;\ XXX 由十进制数 XXX 指 定的ASCII码字符 &lt;br /&gt;\ Xnn 由十六进制数 nn 指定的ASCII码字符 &lt;br /&gt;\ cX 控制字符^X. 例如, \cI等价于 \t, \cJ等价于 \n &lt;br /&gt;&lt;br /&gt;___________________________________________________ &lt;br /&gt;&lt;br /&gt;如果想在正则表达式中使用特殊的标点符号,必须在它们之前加上一个 "\" . &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2.字符类 &lt;br /&gt;&lt;br /&gt;将单独的直接符放进中括号内就可以组合成字符类.一个字符类和它所包含的任何一个字符都匹配,所以正则表达式 / [abc] / 和字母 "a" , "b" , "c" 中的任何一个 &lt;br /&gt;都匹配.另外还可以定义否定字符类,这些类匹配的是除那些包含在中括号之内的字符外的所有字符.定义否定字符尖时,要将一个 ^ 符号作为从左中括号算起的第 &lt;br /&gt;一个字符.正则表达式的集合是 / [a-zA-z0-9] / . &lt;br /&gt;&lt;br /&gt;由于某些字符类非常常用,所以JavaScript的正则表达式语法包含一些特殊字符和转义序列来表示这些常用的类.例如, \s 匹配的是空格符,制表符和其它空白符, \s &lt;br /&gt;匹配的则是空白符之外的任何字符. &lt;br /&gt;&lt;br /&gt;正则表灰式的字符类 &lt;br /&gt;&lt;br /&gt;字符 匹配 &lt;br /&gt;____________________________________________________ &lt;br /&gt;[...] 位于括号之内的任意字符 &lt;br /&gt;[^...] 不在括号之中的任意字符 &lt;br /&gt;. 除了换行符之外的任意字符,等价于[^\n] &lt;br /&gt;\w 任何单字字符, 等价于[a-zA-Z0-9] &lt;br /&gt;\W 任何非单字字符,等价于[^a-zA-Z0-9] &lt;br /&gt;\s 任何空白符,等价于[\ t \ n \ r \ f \ v] &lt;br /&gt;\S 任何非空白符,等价于[^\ t \ n \ r \ f \ v] &lt;br /&gt;\d 任何数字,等价于[0-9] &lt;br /&gt;\D 除了数字之外的任何字符,等价于[^0-9] &lt;br /&gt;[\b] 一个退格直接量(特例) &lt;br /&gt;________________________________________________________________ &lt;br /&gt;&lt;br /&gt;3.复制 &lt;br /&gt;&lt;br /&gt;用以上的正则表式的语法,可以把两位数描述成 / \ d \ d /,把四位数描述成 / \d \ d \ d \ d /.但我们还没有一种方法可以用来描述具有任意多数位的数字或者是一个 &lt;br /&gt;&lt;br /&gt;字符串.这个串由三个字符以及跟随在字母之后的一位数字构成.这些复杂的模式使用的正则表达式语法指定了该表达式中每个元素要重复出现的次数. &lt;br /&gt;&lt;br /&gt;指定复制的字符总是出现在它们所作用的模式后面.由于某种复制类型相当常用.所以有一些特殊的字符专门用于表示它们.例如: +号匹配的就是复制前一模式一次 &lt;br /&gt;&lt;br /&gt;或多次的模式.下面的表列出了复制语法.先看一个例子: &lt;br /&gt;&lt;br /&gt;/\d{2, 4}/ //匹配2到4间的数字. &lt;br /&gt;&lt;br /&gt;/\w{3} \d?/ //匹配三个单字字符和一个任意的数字. &lt;br /&gt;&lt;br /&gt;/\s+java\s+/ //匹配字符串"java" ,并且该串前后可以有一个或多个空格. &lt;br /&gt;&lt;br /&gt;/[^"] * / //匹配零个或多个非引号字符. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;正则表达式的复制字符 &lt;br /&gt;&lt;br /&gt;字符 含义 &lt;br /&gt;__________________________________________________________________ &lt;br /&gt;{n, m} 匹配前一项至少n次,但是不能超过m次 &lt;br /&gt;{n, } 匹配前一项n次,或者多次 &lt;br /&gt;{n} 匹配前一项恰好n次 &lt;br /&gt;? 匹配前一项0次或1次,也就是说前一项是可选的. 等价于 {0, 1} &lt;br /&gt;+ 匹配前一项1次或多次,等价于{1,} &lt;br /&gt;* 匹配前一项0次或多次.等价于{0,} &lt;br /&gt;___________________________________________________________________ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4.选择,分组和引用 &lt;br /&gt;&lt;br /&gt;正则表达式的语法还包括指定选择项,对子表达式分组和引用前一子表达式的特殊字符.字符| 用于分隔供选择的字符.例如: /ab|cd|ef/ 匹配的是字符串 "ab",或者是 &lt;br /&gt;&lt;br /&gt;字符串 "cd",又或者 "ef". /\d{3}|[a-z]{4}/ 匹配的是要么是一个三位数,要么是四个小写字母.在正则表达式中括号具有几种作用.它的主要作用是把单独的项目分组 &lt;br /&gt;&lt;br /&gt;成子表达式,以便可以像处理一个独立的单元那种用 *、+或? 来处理那些项目.例如: /java(script) ?/ 匹配的是字符串 "java",其后既可以有 "script",也可以没有. / &lt;br /&gt;&lt;br /&gt;(ab|cd) + |ef) / 匹配的既可以是字符串 "ef",也可以是字符串"ab" 或者 "cd" 的一次或多次重复. &lt;br /&gt;&lt;br /&gt;在正则表达式中,括号的第二个用途是在完整的模式中定义子模式。当一个正则表达式成功地和目标字符串相匹配时,可以从目标串中抽出和括号中的子模式相匹配 &lt;br /&gt;&lt;br /&gt;的部分.例如,假定我们正在检索的模式是一个或多个字母后面跟随一位或多位数字,那么我们可以使用模式 / [a-z] + \ d+/.但是由于假定我们真正关心的是每个匹配 &lt;br /&gt;&lt;br /&gt;尾部的数字,那么如果我们将模式的数字部分放在括号中 (/ [a-z] + (\d+)/) ,我们就可以从所检索到的任何匹配中抽取数字了,之后我们会对此进行解析的. &lt;br /&gt;&lt;br /&gt;代括号的子表达式的另一个用途是,允许我们在同一正则表达式的后面引用前面的子表达式.这是通过在字符串 \ 后加一位或多位数字来实现的.数字指的是代括号的 &lt;br /&gt;&lt;br /&gt;子表达式在正则表达式中的位置.例如: \1 引用的是第一个代括号的子表达式. \3 引用的是第三个代括号的子表达式.注意,由于子表达式可以嵌套在其它子表达式中, &lt;br /&gt;&lt;br /&gt;所以它的位置是被计数的左括号的位置. &lt;br /&gt;例如:在下面的正则表达式被指定为 \2: &lt;br /&gt;/([Jj]ava([Ss]cript)) \sis \s (fun\w*) / &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;对正则表达式中前一子表达式的引用所指定的并不是那个子表达式的模式,而是与那个模式相匹配的文本.这样,引用就不只是帮助你输入正则表达式的重复部分的快 &lt;br /&gt;&lt;br /&gt;捷方式了,它还实施了一条规约,那就是一个字符串各个分离的部分包含的是完全相同的字符.例如:下面的正则表达式匹配的就是位于单引号或双引号之内的所有字 &lt;br /&gt;&lt;br /&gt;符.但是,它要求开始和结束的引号匹配(例如两个都是双引号或者都是单引号): &lt;br /&gt;/[' "] [^ ' "]*[' "]/ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;如果要求开始和结束的引号匹配,我们可以使用如下的引用: &lt;br /&gt;/( [' "] ) [^ ' "] * \1/ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;\1匹配的是第一个代括号的子表达式所匹配的模式.在这个例子中,它实施了一种规约,那就是开始的引号必须和结束的引号相匹配.注意,如果反斜杠后跟随的数字比 &lt;br /&gt;&lt;br /&gt;代括号的子表达式数多,那么它就会被解析为一个十进制的转义序列,而不是一个引用.你可以坚持使用完整的三个字符来表示转义序列,这们就可以避免混淆了.例如, &lt;br /&gt;&lt;br /&gt;使用 \044,而不是\44.下面是正则表达式的选择、分组和引用字符: &lt;br /&gt;&lt;br /&gt;字符 含义 &lt;br /&gt;____________________________________________________________________ &lt;br /&gt;| 选择.匹配的要么是该符号左边的子表达式,要么它右边的子表达式 &lt;br /&gt;(...) 分组.将几个项目分为一个单元.这个单元可由 *、+、？和|等符号使用,而且还可以记住和这个组匹配的字符以供此后引 &lt;br /&gt;&lt;br /&gt;用使用 &lt;br /&gt;\n 和第n个分组所匹配的字符相匹配.分组是括号中的子表达式(可能是嵌套的).分组号是从左到右计数的左括号数 &lt;br /&gt;____________________________________________________________________ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5.指定匹配的位置 &lt;br /&gt;&lt;br /&gt;我们已经看到了,一个正则表达式中的许多元素才能够匹配字符串的一个字符.例如: \s 匹配的只是一个空白符.还有一些正则表达式的元素匹配的是字符之间宽度为 &lt;br /&gt;&lt;br /&gt;0的空间,而不是实际的字符例如: \b 匹配的是一个词语的边界,也就是处于一个/w字字符和一个\w非字字符之间的边界.像\b 这样的字符并不指定任何一个匹配了的 &lt;br /&gt;&lt;br /&gt;字符串中的字符,它们指定的是匹配所发生的合法位置.有时我们称这些元素为正则表达式的锚.因为它们将模式定位在检索字符串中的一个特定位置.最常用的锚元 &lt;br /&gt;&lt;br /&gt;素是 ^, 它使模式依赖于字符串的开头,而锚元素$则使模式定位在字符串的末尾. &lt;br /&gt;&lt;br /&gt;例如:要匹配词 "javascript" ,我们可以使用正则表达式 /^ javascript $/. 如果我们想检索 "java" 这个词自身 (不像在 "javascript" 中那样作为前缀),那么我们可以使 &lt;br /&gt;&lt;br /&gt;用模式 /\s java \s /, 它要求在词语java之前和之后都有空格.但是这样作有两个问题.第一: 如果 "java" 出现在一个字符的开头或者是结尾.该模式就不会与之匹配,除 &lt;br /&gt;&lt;br /&gt;非在开头和结尾处有一个空格. 第二: 当这个模式找到一个与之匹配的字符时,它返回的匹配的字符串前端和后端都有空格,这并不是我们想要的.因此,我们使用词语 &lt;br /&gt;&lt;br /&gt;的边界 \b 来代替真正的空格符 \s 进行匹配. 结果表达式是 /\b java \b/. &lt;br /&gt;下面是正则表达式的锚字符: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;字符 含义 &lt;br /&gt;____________________________________________________________________ &lt;br /&gt;^ 匹配的是字符的开头,在多行检索中,匹配的是一行的开头 &lt;br /&gt;$ 匹配的是字符的结尾,在多行检索中,匹配的是一行的结尾 &lt;br /&gt;\b 匹配的是一个词语的边界.简而言之就是位于字符\w 和 \w之间的位置(注意:[\b]匹配的是退格符) &lt;br /&gt;\B 匹配的是非词语的边界的字符 &lt;br /&gt;_____________________________________________________________________ &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6.属性 &lt;br /&gt;&lt;br /&gt;有关正则表达式的语法还有最后一个元素,那就是正则表达式的属性,它说明的是高级模式匹配的规则.和其它正则表达式语法不同,属性是在 / 符号之外说明的.即它 &lt;br /&gt;&lt;br /&gt;们不出现在两个斜杠之间,而是位于第二个斜杠之后.javascript 1.2支持两个属性.属性 i 说明模式匹配应该是大小写不敏感的.属性 g 说明模式匹配应该是全局的.也 &lt;br /&gt;&lt;br /&gt;就是说,应该找出被检索的字符串中所有的匹配.这两种属性联合起来就可以执行一个全局的,大小写不敏感的匹配. &lt;br /&gt;&lt;br /&gt;例如: 要执行一个大小不敏感的检索以找到词语 "java" (或者是 "java" 、"JAVA"等) 的第一个具体值,我们可以使用大小不敏感的正则表达式 /\b java\b/i .如果要在 &lt;br /&gt;&lt;br /&gt;一个字符串中找到 "java" 所有的具体值,我们还可以添加属性 g, 即 /\b java \b/gi . &lt;br /&gt;&lt;br /&gt;以下是正则表达式的属性: &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;字符 含义 &lt;br /&gt;_________________________________________ &lt;br /&gt;i 执行大小写不敏感的匹配 &lt;br /&gt;g 执行一个全局的匹配,简而言之,就是找到所有的匹配,而不是在找到第一个之后就停止了 &lt;br /&gt;_________________________________________ &lt;br /&gt;&lt;br /&gt;除属性 g 和 i 之外,正则表达式就没有其它像属性一样的特性了.如果将构造函数 RegExp 的静态属性 multiline 设置为 true ,那么模式匹配将以多行的模式进行.在这 &lt;br /&gt;&lt;br /&gt;种模式下,锚字符 ^ 和 $ 匹配的不只是检索字符串的开头和结尾,还匹配检索字符串内部的一行的开头和结尾.例如: 模式 /Java$/ 匹配的是 "Java",但是并不匹配 &lt;br /&gt;&lt;br /&gt;"Java\nis fun" .如果我们设置了 multiline 属性,那么后者也将被匹配: &lt;br /&gt;&lt;br /&gt;RegExp.multiline = true; &lt;/p&gt;&lt;p&gt;在JAVASCRIPT里面判断一个字符串是否是电子邮件的格式： &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;if(formname.email.value!=formname.email.value.match(/^\w +[@]\w +[.][\w.] +$/)) &lt;br /&gt;{ &lt;br /&gt;alert("您的电子邮件格式错误！"); &lt;br /&gt;formname.email.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="74%"&gt;&lt;a href="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/more.asp_Q_name_E_boolusilan_A_id_E_4980"&gt;&lt;font color="#355ea0"&gt;阅读全文(42) &lt;/font&gt;&lt;/a&gt;| &lt;a href="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/more.asp_Q_name_E_boolusilan_A_id_E_4980#comment"&gt;&lt;font color="#355ea0"&gt;回复(0) &lt;/font&gt;&lt;/a&gt;| &lt;a href="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/showtb.asp_Q_id_E_4980"&gt;&lt;font color="#355ea0"&gt;引用(0) &lt;/font&gt;&lt;/a&gt;| &lt;a href="http://www.365key.com/storeit.aspx"&gt;&lt;font color="#355ea0"&gt;[用365key收藏此日志] &lt;/font&gt;&lt;/a&gt;&lt;/td&gt;&lt;td width="26%"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;[RED]function dateVerify(date){ &lt;br /&gt;var reg = /^(\d{4})(-)(\d{2})\2(\d{2})$/; &lt;br /&gt;var r = date.match(reg); &lt;br /&gt;if(r==null) return false; &lt;br /&gt;var d= new Date(r[1], r[3]-1,r[4]); &lt;br /&gt;var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate(); &lt;br /&gt;date=r[1]+r[2]+((r[3]-1)+1)+r[2]+((r[4]-1)+1); &lt;br /&gt;return newStr==date; &lt;br /&gt;}[/RED] &lt;br /&gt;&lt;/p&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top" bgcolor="#fafafa"&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;javascript的17种正则表达式 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="9t2" align="center"&gt;&lt;strong&gt;作者： &lt;/strong&gt;不祥　 &lt;strong&gt;时间: &lt;/strong&gt;2004-6-9 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="9t2"&gt;"^\\d+$"//非负整数（正整数 + 0） &lt;br /&gt;"^[0-9]*[1-9][0-9]*$"//正整数 &lt;br /&gt;"^((-\\d+)|(0+))$"//非正整数（负整数 + 0） &lt;br /&gt;"^-[0-9]*[1-9][0-9]*$"//负整数 &lt;br /&gt;"^-?\\d+$"//整数 &lt;br /&gt;"^\\d+(\\.\\d+)?$"//非负浮点数（正浮点数 + 0） &lt;br /&gt;"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"//正浮点数 &lt;br /&gt;"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"//非正浮点数（负浮点数 + 0） &lt;br /&gt;"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"//负浮点数 &lt;br /&gt;"^(-?\\d+)(\\.\\d+)?$"//浮点数 &lt;br /&gt;"^[A-Za-z]+$"//由26个英文字母组成的字符串 &lt;br /&gt;"^[A-Z]+$"//由26个英文字母的大写组成的字符串 &lt;br /&gt;"^[a-z]+$"//由26个英文字母的小写组成的字符串 &lt;br /&gt;"^[A-Za-z0-9]+$"//由数字和26个英文字母组成的字符串 &lt;br /&gt;"^\\w+$"//由数字、26个英文字母或者下划线组成的字符串 &lt;br /&gt;"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"//email地址 &lt;br /&gt;"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$"//url &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table cellspacing="3" cellpadding="3" width="560"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center" width="100%" bgcolor="#dfebf4"&gt;&lt;strong&gt;JavaScript中的正则表达式(2) &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center" width="100%" bgcolor="#183ead"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100%"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="100%"&gt;&lt;p align="center"&gt;&lt;strong&gt;作者 &lt;/strong&gt;：中国论坛网收集 &lt;strong&gt;来源 &lt;/strong&gt;：http://www.51one.net &lt;strong&gt;加入时间 &lt;/strong&gt;：2004-8-25 　 &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" width="100%"&gt;&lt;p&gt;正则表达式对象的属性及方法 &lt;br /&gt; 预定义的正则表达式拥有有以下静态属性：input, multiline, lastMatch, lastParen, leftContext, rightContext和$1到$9。其中input和multiline可以预设置。其他属性的值在执行过exec或test方法后被根据不同条件赋以不同的值。许多属性同时拥有长和短(perl风格)的两个名字，并且，这两个名字指向同一个值。(JavaScript模拟perl的正则表达式) &lt;br /&gt;正则表达式对象的属性 &lt;/p&gt;&lt;table cellspacing="0" cellpadding="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;table cellspacing="1" cellpadding="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;属性 &lt;/td&gt;&lt;td&gt;含义 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$1...$9 &lt;/td&gt;&lt;td&gt;如果它(们)存在，是匹配到的子串 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$_ &lt;/td&gt;&lt;td&gt;参见input &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$* &lt;/td&gt;&lt;td&gt;参见multiline &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$&amp;amp; &lt;/td&gt;&lt;td&gt;参见lastMatch &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$+ &lt;/td&gt;&lt;td&gt;参见lastParen &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$` &lt;/td&gt;&lt;td&gt;参见leftContext &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;$''　 &lt;/td&gt;&lt;td&gt;参见rightContext &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;constructor　 &lt;/td&gt;&lt;td&gt;创建一个对象的一个特殊的函数原型 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;global &lt;/td&gt;&lt;td&gt;是否在整个串中匹配(bool型) &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;ignoreCase &lt;/td&gt;&lt;td&gt;匹配时是否忽略大小写(bool型) &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;input　 &lt;/td&gt;&lt;td&gt;被匹配的串 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;lastIndex &lt;/td&gt;&lt;td&gt;最后一次匹配的索引 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;lastParen &lt;/td&gt;&lt;td&gt;最后一个括号括起来的子串 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;leftContext　 &lt;/td&gt;&lt;td&gt;最近一次匹配以左的子串 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;multiline &lt;/td&gt;&lt;td&gt;是否进行多行匹配(bool型) &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;prototype &lt;/td&gt;&lt;td&gt;允许附加属性给对象 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;rightContext　 &lt;/td&gt;&lt;td&gt;最近一次匹配以右的子串 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;source &lt;/td&gt;&lt;td&gt;正则表达式模式 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;lastIndex &lt;/td&gt;&lt;td&gt;最后一次匹配的索引 &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;strong&gt;&lt;br /&gt;正则表达式对象的方法 &lt;br /&gt;&lt;/strong&gt;&lt;table cellspacing="0" cellpadding="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;table cellspacing="1" cellpadding="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;方法 &lt;/td&gt;&lt;td&gt;含义 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;compile　 &lt;/td&gt;&lt;td&gt;正则表达式比较 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;exec　 &lt;/td&gt;&lt;td&gt;执行查找 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;test　 &lt;/td&gt;&lt;td&gt;进行匹配 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;toSource　 &lt;/td&gt;&lt;td&gt;返回特定对象的定义(literal representing)，其值可用来创建一个新的对象。重载Object.toSource方法得到的。 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;toString　 &lt;/td&gt;&lt;td&gt;返回特定对象的串。重载Object.toString方法得到的。 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;valueOf　 &lt;/td&gt;&lt;td&gt;返回特定对象的原始值。重载Object.valueOf方法得到 &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;例子 &lt;br /&gt;&amp;lt;script language = "JavaScript"&amp;gt; &lt;br /&gt;var myReg = /(w+)s(w+)/; &lt;br /&gt;var str = "John Smith"; &lt;br /&gt;var newstr = str.replace(myReg, "$2, $1"); &lt;br /&gt;document.write(newstr); &lt;br /&gt;&amp;lt;/script&amp;gt; &lt;br /&gt;将输出"Smith, John" &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p align="center"&gt;&lt;strong&gt;javascript正则表达式检验 &lt;/strong&gt;&lt;/p&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center"&gt;责任编辑：fuxing [ &lt;a href="http://www.wrclub.net/"&gt;&lt;font color="#355ea0"&gt;网人帝国 &lt;/font&gt;&lt;/a&gt;] 添加时间：2003-11-13 9:13:00 人气：1169 【 &lt;a href="http://www.cnblogs.com/itecho/admin/javascript:doZoom(16)"&gt;&lt;font color="#355ea0"&gt;大 &lt;/font&gt;&lt;/a&gt;&lt;a href="http://www.cnblogs.com/itecho/admin/javascript:doZoom(14)"&gt;&lt;font color="#355ea0"&gt;中 &lt;/font&gt;&lt;/a&gt;&lt;a href="http://www.cnblogs.com/itecho/admin/javascript:doZoom(12)"&gt;&lt;font color="#355ea0"&gt;小 &lt;/font&gt;&lt;/a&gt;】 &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;/********************************************************************************* &lt;br /&gt;* EO_JSLib.js &lt;br /&gt;* javascript正则表达式检验 &lt;br /&gt;**********************************************************************************/ &lt;br /&gt;&lt;br /&gt;//校验是否全由数字组成 &lt;br /&gt;function isDigit(s) &lt;br /&gt;{ &lt;br /&gt;var patrn=/^[0-9]{1,20}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验登录名：只能输入5-20个以字母开头、可带数字、&amp;#8220;_&amp;#8221;、&amp;#8220;.&amp;#8221;的字串 &lt;br /&gt;function isRegisterUserName(s) &lt;br /&gt;{ &lt;br /&gt;var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验用户姓名：只能输入1-30个以字母开头的字串 &lt;br /&gt;function isTrueName(s) &lt;br /&gt;{ &lt;br /&gt;var patrn=/^[a-zA-Z]{1,30}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验密码：只能输入6-20个字母、数字、下划线 &lt;br /&gt;function isPasswd(s) &lt;br /&gt;{ &lt;br /&gt;var patrn=/^(\w){6,20}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验普通电话、传真号码：可以&amp;#8220;+&amp;#8221;开头，除数字外，可含有&amp;#8220;-&amp;#8221; &lt;br /&gt;function isTel(s) &lt;br /&gt;{ &lt;br /&gt;//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/; &lt;br /&gt;var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验手机号码：必须以数字开头，除数字外，可含有&amp;#8220;-&amp;#8221; &lt;br /&gt;function isMobil(s) &lt;br /&gt;{ &lt;br /&gt;var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验邮政编码 &lt;br /&gt;function isPostalCode(s) &lt;br /&gt;{ &lt;br /&gt;//var patrn=/^[a-zA-Z0-9]{3,12}$/; &lt;br /&gt;var patrn=/^[a-zA-Z0-9 ]{3,12}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;//校验搜索关键字 &lt;br /&gt;function isSearch(s) &lt;br /&gt;{ &lt;br /&gt;var patrn=/^[^`~!@#$%^&amp;amp;*()+=|\\\][\]\{\}:;'\,.&amp;lt;&amp;gt;/?]{1}[^`~!@$%^&amp;amp;()+=|\\\][\]\{\}:;'\,.&amp;lt;&amp;gt;?]{0,19}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;function isIP(s) //by zergling &lt;br /&gt;{ &lt;br /&gt;var patrn=/^[0-9.]{1,20}$/; &lt;br /&gt;if (!patrn.exec(s)) return false &lt;br /&gt;return true &lt;br /&gt;} &lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;正则表达式regular expression详述(一) &lt;/strong&gt;&lt;br /&gt;http://www.kymita.com/888.asp 2002-12-15 蓝箭工作室 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;正则表达式是regular expression，看来英文比中文要好理解多了，就是检查表达式符 &lt;br /&gt;不符合规定！！正则表达式有一个功能十分强大而又十分复杂的对象RegExp，在JavaScript1.2 版本以 &lt;br /&gt;上提供。 &lt;br /&gt;下面我们看看有关正则表达式的介绍： &lt;br /&gt;正则表达式对象用来规范一个规范的表达式(也就是表达式符不符合特定的要求，比如是不是Email &lt;br /&gt;地址格式等)，它具有用来检查给出的字符串是否符合规则的属性和方法。 &lt;br /&gt;除此之外，你用RegExp构造器建立的个别正则表达式对象的属性，就已经预先定义好了正则表达式 &lt;br /&gt;对象的静态属性，你可以随时使用它们。 &lt;br /&gt;核心对象： &lt;br /&gt;在JavaScript 1.2, NES 3.0以上版本提供。 &lt;br /&gt;在JavaScript 1.3以后版本增加了toSource方法。 &lt;br /&gt;建立方法： &lt;br /&gt;文字格式或RegExp构造器函数。 &lt;br /&gt;文字建立格式使用以下格式： &lt;br /&gt;/pattern/flags即/模式/标记 &lt;/p&gt;&lt;p&gt;构造器函数方法使用方法如下： &lt;br /&gt;new RegExp("pattern"[, "flags"])即new RegExp("模式"[,"标记"]) &lt;/p&gt;&lt;p&gt;参数： &lt;br /&gt;pattern(模式) &lt;br /&gt;表示正则表达式的文本 &lt;/p&gt;&lt;p&gt;flags(标记) &lt;br /&gt;如果指定此项，flags可以是下面值之一： &lt;br /&gt;g: global match(全定匹配) &lt;br /&gt;i: ignore case(忽略大小写) &lt;br /&gt;gi: both global match and ignore case(匹配所有可能的值，也忽略大小写) &lt;/p&gt;&lt;p&gt;注意：文本格式中的参数不要使用引号标记，而构造器函数的参数则要使用引号标记。所以下面的 &lt;br /&gt;表达式建立同样的正则表达式： &lt;br /&gt;/ab+c/i &lt;br /&gt; new RegExp("ab+c", "i") &lt;/p&gt;&lt;p&gt;描述： &lt;br /&gt;当使用构造函数的时候，必须使用正常的字符串避开规则(在字符串中加入前导字符\ )是必须的。 &lt;br /&gt;例如，下面的两条语句是等价的： &lt;br /&gt;re = new RegExp("\\w+") &lt;br /&gt;re = /\w+/ &lt;/p&gt;&lt;p&gt;下面的提供了在正则表达式中能够使用的完整对特殊字符的一个完整的列表和描述。 &lt;/p&gt;&lt;p&gt;表1.3：正则表达式中的特殊字符： &lt;/p&gt;&lt;p&gt;字符\ &lt;br /&gt;意义：对于字符，通常表示按字面意义，指出接着的字符为特殊字符，\不作解释。 &lt;br /&gt;例如：/b/匹配字符'b',通过在b 前面加一个反斜杠\，也就是/\b/，则该字符变成特殊字符，表示 &lt;br /&gt;匹配一个单词的分界线。 &lt;br /&gt;或者： &lt;br /&gt;对于几个字符，通常说明是特殊的，指出紧接着的字符不是特殊的，而应该按字面解释。 &lt;br /&gt;例如：*是一个特殊字符，匹配任意个字符(包括0个字符)；例如：/a*/意味匹配0个或多个a。 &lt;br /&gt;为了匹配字面上的*，在a前面加一个反斜杠；例如：/a\*/匹配'a*'。 &lt;/p&gt;&lt;p&gt;字符^ &lt;br /&gt;意义：表示匹配的字符必须在最前边。 &lt;br /&gt;例如：/^A/不匹配"an A,"中的'A'，但匹配"An A."中最前面的'A'。 &lt;/p&gt;&lt;p&gt;字符$ &lt;br /&gt;意义：与^类似，匹配最末的字符。 &lt;br /&gt;例如：/t$/不匹配"eater"中的't'，但匹配"eat"中的't'。 &lt;/p&gt;&lt;p&gt;字符* &lt;br /&gt;意义：匹配*前面的字符0次或n次。 &lt;br /&gt;例如:/bo*/匹配"A ghost booooed"中的'boooo'或"A bird warbled"中的'b'，但不匹配"A goat g &lt;br /&gt;runted"中的任何字符。 &lt;/p&gt;&lt;p&gt;字符+ &lt;br /&gt;意义：匹配+号前面的字符1次或n次。等价于{1,}。 &lt;br /&gt;例如：/a+/匹配"candy"中的'a'和"caaaaaaandy."中的所有'a'。 &lt;/p&gt;&lt;p&gt;字符? &lt;br /&gt;意义：匹配?前面的字符0次或1次。 &lt;br /&gt;例如：/e?le?/匹配"angel"中的'el'和"angle."中的'le'。 &lt;/p&gt;&lt;p&gt;字符. &lt;br /&gt;意义：(小数点)匹配除换行符外的所有单个的字符。 &lt;br /&gt;例如：/.n/匹配"nay, an apple is on the tree"中的'an'和'on'，但不匹配'nay'。 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;字符(x) &lt;br /&gt;意义：匹配'x'并记录匹配的值。 &lt;br /&gt;例如：/(foo)/匹配和记录"foo bar."中的'foo'。匹配子串能被结果数组中的素[1], ..., [n] 返 &lt;br /&gt;回，或被RegExp对象的属性$1, ..., $9返回。 &lt;/p&gt;&lt;p&gt;字符x|y &lt;br /&gt;意义：匹配'x'或者'y'。 &lt;br /&gt;例如：/green|red/匹配"green apple"中的'green'和"red apple."中的'red'。 &lt;/p&gt;&lt;p&gt;字符{n} &lt;br /&gt;意义：这里的n是一个正整数。匹配前面的n个字符。 &lt;br /&gt;例如：/a{2}/不匹配"candy,"中的'a'，但匹配"caandy," 中的所有'a'和"caaandy."中前面的两个 &lt;br /&gt;'a'。 &lt;/p&gt;&lt;p&gt;字符{n,} &lt;br /&gt;意义：这里的n是一个正整数。匹配至少n个前面的字符。 &lt;br /&gt;例如：/a{2,}不匹配"candy"中的'a'，但匹配"caandy"中的所有'a'和"caaaaaaandy."中的所有'a' &lt;/p&gt;&lt;p&gt;字符{n,m} &lt;br /&gt;意义：这里的n和m都是正整数。匹配至少n个最多m个前面的字符。 &lt;br /&gt;例如：/a{1,3}/不匹配"cndy"中的任何字符，但匹配 "candy,"中的'a'，"caandy," 中的前面两个 &lt;br /&gt;'a'和"caaaaaaandy"中前面的三个'a'，注意：即使"caaaaaaandy" 中有很多个'a'，但只匹配前面的三 &lt;br /&gt;个'a'即"aaa"。 &lt;/p&gt;&lt;p&gt;字符[xyz] &lt;br /&gt;意义：一字符列表，匹配列出中的任一字符。你可以通过连字符-指出一个字符范围。 &lt;br /&gt;例如：[abcd]跟[a-c]一样。它们匹配"brisket"中的'b'和"ache"中的'c'。 &lt;/p&gt;&lt;p&gt;字符[^xyz] &lt;br /&gt;意义：一字符补集，也就是说，它匹配除了列出的字符外的所有东西。 你可以使用连字符-指出一 &lt;br /&gt;字符范围。 &lt;br /&gt;例如：[^abc]和[^a-c]等价，它们最早匹配"brisket"中的'r'和"chop."中的'h'。 &lt;/p&gt;&lt;p&gt;字符[\b] &lt;br /&gt;意义：匹配一个空格(不要与\b混淆) &lt;/p&gt;&lt;p&gt;字符\b &lt;br /&gt;意义：匹配一个单词的分界线，比如一个空格(不要与[\b]混淆) &lt;br /&gt;例如：/\bn\w/匹配"noonday"中的'no'，/\wy\b/匹配"possibly yesterday."中的'ly'。 &lt;/p&gt;&lt;p&gt;字符\B &lt;br /&gt;意义：匹配一个单词的非分界线 &lt;br /&gt;例如：/\w\Bn/匹配"noonday"中的'on'，/y\B\w/匹配"possibly yesterday."中的'ye'。 &lt;/p&gt;&lt;p&gt;字符\cX &lt;br /&gt;意义：这里的X是一个控制字符。匹配一个字符串的控制字符。 &lt;br /&gt;例如：/\cM/匹配一个字符串中的control-M。 &lt;/p&gt;&lt;p&gt;字符\d &lt;br /&gt;意义：匹配一个数字，等价于[0-9]。 &lt;br /&gt;例如：/\d/或/[0-9]/匹配"B2 is the suite number."中的'2'。 &lt;/p&gt;&lt;p&gt;字符\D &lt;br /&gt;意义：匹配任何的非数字，等价于[^0-9]。 &lt;br /&gt;例如：/\D/或/[^0-9]/匹配"B2 is the suite number."中的'B'。 &lt;/p&gt;&lt;p&gt;字符\f &lt;br /&gt;意义：匹配一个表单符 &lt;/p&gt;&lt;p&gt;字符\n &lt;br /&gt;意义：匹配一个换行符 &lt;/p&gt;&lt;p&gt;字符\r &lt;br /&gt;意义：匹配一个回车符 &lt;/p&gt;&lt;p&gt;字符\s &lt;br /&gt;意义：匹配一个单个white空格符，包括空格，tab，form feed，换行符，等价于[ \f\n\r\t\v]。 &lt;br /&gt;例如：/\s\w*/匹配"foo bar."中的' bar'。 &lt;/p&gt;&lt;p&gt;字符\S &lt;br /&gt;意义：匹配除white空格符以外的一个单个的字符，等价于[^ \f\n\r\t\v]。 &lt;br /&gt;例如：/\S/\w*匹配"foo bar."中的'foo'。 &lt;/p&gt;&lt;p&gt;字符\t &lt;br /&gt;意义：匹配一个制表符 &lt;/p&gt;&lt;p&gt;字符\v &lt;br /&gt;意义：匹配一个顶头制表符 &lt;/p&gt;&lt;p&gt;字符\w &lt;br /&gt;意义：匹配所有的数字和字母以及下划线，等价于[A-Za-z0-9_]。 &lt;br /&gt;例如：/\w/匹配"apple,"中的'a'，"$5.28,"中的'5'和"3D."中的'3'。 &lt;/p&gt;&lt;p&gt;字符\W &lt;br /&gt;意义：匹配除数字、字母外及下划线外的其它字符，等价于[^A-Za-z0-9_]。 &lt;br /&gt;例如：/\W/或者/[^$A-Za-z0-9_]/匹配"50%."中的'%'。 &lt;/p&gt;&lt;p&gt;字符\n &lt;br /&gt;意义：这里的n是一个正整数。匹配一个正则表达式的最后一个子串的n的值(计数左圆括号)。 &lt;/p&gt;&lt;p&gt;例如：/apple(,)\sorange\1/匹配"apple, orange, cherry, peach."中的'apple, orange'，下面 &lt;br /&gt;有一个更加完整的例子。 &lt;br /&gt;注意：如果左圆括号中的数字比\n指定的数字还小，则\n取下一行的八进制escape作为描述。 &lt;/p&gt;&lt;p&gt;字符\ooctal和\xhex &lt;br /&gt;意义：这里的\ooctal是一个八进制的escape值，而\xhex是一个十六进制的escape值，允许在一个 &lt;br /&gt;正则表达式中嵌入ASCII码。 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;当表达式被检查的时候，文字符号提供了编辑正则表达式的方法。利用文字符号可以使到正则表达 &lt;br /&gt;式保持为常数。例如，如果你在一个循环中使用文字符号来构造一个正则表达式，正则表达式不需进行 &lt;br /&gt;反复编译。 &lt;br /&gt;正则表达式对象构造器，例如，new RegExp("ab+c")，提供正则表达式的运行时编译。当你知道正 &lt;br /&gt;则表达式的模式会变化的时候，应该使用构造函数，或者你不知道正则表达式的模式，而它们是从另外 &lt;br /&gt;的源获得的时候，比如由用户输入时。一旦你定义好了正则表达式，该正则表达式可在任何地方使用， &lt;br /&gt;并且可以改变，你可以使用编译方法来编译一个新的正则表达式以便重新使用。 &lt;br /&gt;一个分离预先定义的RegExp对象可以在每个窗口中使用；也就是说，每个分离的JavaScript线程运 &lt;br /&gt;行以获得自己的RegExp对象。因为每个脚本在一个线程中是不可中断的，这就确保了不同的脚本不会覆 &lt;br /&gt;盖RegExp对象的值。 &lt;br /&gt;预定义的RegExp对象包含的静态属性：input, multiline, lastMatch,lastParen, leftContext, &lt;br /&gt;rightContext, 以及从$1到$9。input和multiline属性能被预设。其它静态属性的值是在执行个别正则 &lt;br /&gt;表达式对象的exec和test方法后，且在执行字符串的match和replace方法后设置的。 &lt;/p&gt;&lt;p&gt;属性 &lt;br /&gt;注意RegExp对象的几个属性既有长名字又有短名字(象Perl)。这些名字都是指向相同的值。Perl是 &lt;br /&gt;一种编程语言，而JavaScript模仿了它的正则表达式。 &lt;/p&gt;&lt;p&gt;属性$1, ..., $9 &lt;br /&gt;取得匹配的子串，如果有的话 &lt;/p&gt;&lt;p&gt;属性$_ &lt;br /&gt;参考input &lt;/p&gt;&lt;p&gt;属性$* &lt;br /&gt;参考multiline &lt;/p&gt;&lt;p&gt;属性$&amp;amp; &lt;br /&gt;参考lastMatch &lt;/p&gt;&lt;p&gt;属性$+ &lt;br /&gt;参考lastParen &lt;/p&gt;&lt;p&gt;属性$` &lt;br /&gt;参考leftContext &lt;/p&gt;&lt;p&gt;属性$' &lt;br /&gt;参考rightContext &lt;/p&gt;&lt;p&gt;属性constructor &lt;br /&gt;指定用来建立对象原型函 &lt;/p&gt;&lt;p&gt;属性global &lt;br /&gt;决定是否测试正则表达式是否不能匹配所有的字符串，或者只是与最先的冲突。 &lt;/p&gt;&lt;p&gt;属性ignoreCase &lt;br /&gt;决定试图匹配字符串的时候是否忽略大小写 &lt;/p&gt;&lt;p&gt;属性input &lt;br /&gt;当正则表达式被匹配的时候，为相反的字符串。 &lt;/p&gt;&lt;p&gt;属性lastIndex &lt;br /&gt;决定下一次匹配从那里开始 &lt;/p&gt;&lt;p&gt;属性lastMatch &lt;br /&gt;最后一个匹配的字符 &lt;/p&gt;&lt;p&gt;属性lastParen &lt;br /&gt;子串匹配的时候，最后一个parenthesized，如果有的话。 &lt;/p&gt;&lt;p&gt;属性leftContext &lt;br /&gt;最近一次匹配前的子串。 &lt;/p&gt;&lt;p&gt;属性multiline &lt;br /&gt;是否在串的多行中搜索。 &lt;/p&gt;&lt;p&gt;属性prototype &lt;br /&gt;允许附加属性到所有的对象 &lt;/p&gt;&lt;p&gt;属性rightContext &lt;br /&gt;最近一次匹配后的的子串。 &lt;/p&gt;&lt;p&gt;属性source &lt;br /&gt;模式文本 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;方法 &lt;br /&gt;compile方法 &lt;br /&gt;编译一个正则表达式对象 &lt;/p&gt;&lt;p&gt;exec方法 &lt;br /&gt;运行正则表达式匹配 &lt;/p&gt;&lt;p&gt;test方法 &lt;br /&gt;测试正则达式匹配 &lt;/p&gt;&lt;p&gt;toSource方法 &lt;br /&gt;返回一个对象的文字描述指定的对象；你可以使用这个值来建立一个新的对象。不考虑Object.toS &lt;br /&gt;ource方法。 &lt;/p&gt;&lt;p&gt;toString方法 &lt;br /&gt;返回一个字符串描述指定的对象，不考虑Object.toString对象。 &lt;/p&gt;&lt;p&gt;valueOf方法 &lt;br /&gt;返回指定对角的原始值。不考虑Object.valueOf方法。 &lt;/p&gt;&lt;p&gt;　另外，这个对象继承了对象的watch和unwatch方法 &lt;/p&gt;&lt;p&gt;&lt;br /&gt; 例子： &lt;br /&gt; 例１、下述示例脚本使用replace方法来转换串中的单词。在替换的文本中，脚本使用全局 RegExp &lt;br /&gt;对象的$1和$2属性的值。注意，在作为第二个参数传递给replace方法的时候，RegExp对象的$属性的名 &lt;br /&gt;称。 &lt;br /&gt;&amp;lt;SCRIPT LANGUAGE="JavaScript1.2"&amp;gt; &lt;br /&gt;re = /(\w+)\s(\w+)/; &lt;br /&gt;str = "John Smith"; &lt;br /&gt;newstr=str.replace(re,"$2, $1"); &lt;br /&gt;document.write(newstr) &lt;br /&gt;&amp;lt;/SCRIPT&amp;gt; &lt;br /&gt;显示结果："Smith, John". &lt;/p&gt;&lt;p&gt;例２、下述示例脚本中，RegExp.input由Change事件处理句柄设置。在getInfo函数中，exec 方法 &lt;br /&gt;使用RegExp.input的值作为它的参数，注意RegExp预置了$属性。 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&amp;lt;SCRIPT LANGUAGE="JavaScript1.2"&amp;gt; &lt;br /&gt;function getInfo(abc) &lt;br /&gt;{ &lt;br /&gt;re = /(\w+)\s(\d+)/; &lt;br /&gt;re.exec(abc.value); &lt;br /&gt;window.alert(RegExp.$1 + ", your age is " + RegExp.$2); &lt;br /&gt;} &lt;br /&gt;&amp;lt;/SCRIPT&amp;gt; &lt;/p&gt;&lt;p&gt;请输入你的姓和年龄，输入完后按回车键。 &lt;br /&gt; &amp;lt;FORM&amp;gt;&amp;lt;INPUT TYPE="TEXT" NAME="NameAge" onChange="getInfo(this);"&amp;gt;&amp;lt;/FORM&amp;gt; &lt;br /&gt; &amp;lt;/HTML&amp;gt; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;$1, ..., $9属性 &lt;br /&gt;用圆括号括着的匹配子串，如果有的话。 &lt;br /&gt;是RegExp的属性 &lt;br /&gt;静态，只读 &lt;/p&gt;&lt;p&gt;在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：因为input是静态属性，不是个别正则表达式对象的属性。你可以使用RegExp.input 访问该 &lt;br /&gt;属性。 &lt;/p&gt;&lt;p&gt;能加上圆括号的子串的数量不受限制，但正则表达式对象只能保留最后9 条。如果你要访问所有的 &lt;br /&gt;圆括号内的匹配字串，你可以使用返回的数组。 &lt;/p&gt;&lt;p&gt;这些属性能用在RegExp.replace方法替换后的字符串(输出结果)。当使用这种方式的时候，不用预 &lt;br /&gt;先考虑RegExp对象。下面给出例子。当正则表达式中没有包含圆括号的时候，该脚本解释成$n的字面意 &lt;br /&gt;义。(这里的n是一个正整数)。 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;例如： &lt;br /&gt;下例脚本使用replace 方法来交换串中单词的位置。在替换后的文本字串中，脚本使用正则表达式 &lt;br /&gt;RegExp对象的$1和$2属性的值。注意：当它们向replace方法传递参数的时候，这里没有考虑 $ 属性的 &lt;br /&gt;RegExp对象的名称。 &lt;br /&gt;&amp;lt;SCRIPT LANGUAGE="JavaScript1.2"&amp;gt; &lt;br /&gt;re = /(\w+)\s(\w+)/; &lt;br /&gt;str = "John Smith"; &lt;br /&gt;newstr=str.replace(re,"$2, $1"); &lt;br /&gt;document.write(newstr) &lt;br /&gt;&amp;lt;/SCRIPT&amp;gt; &lt;br /&gt;显示的输出结果为：Smith, John。 &lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;正则表达式regular expression详述(二) &lt;/strong&gt;&lt;br /&gt;http://www.kymita.com/888.asp 2002-12-15 蓝箭工作室 &lt;/p&gt;&lt;p&gt;&lt;br /&gt;正则表达式详述（二） &lt;/p&gt;&lt;p&gt;以下这些不是正则表达式的新增对象请参阅对应的JavaScript对象的属性 $_属性 参考input $*属性 &lt;br /&gt;参考multiline $&amp;amp;属性 参考lastMatch $+属性 参考lastParen $`属性 &lt;br /&gt;参考leftContext $'属性 参考rightContext compile方法 在脚本运行期间编译正则表达式对象 &lt;br /&gt;属于RegExp的方法 在JavaScript 1.2, NES 3.0以上版本提供 语法： &lt;br /&gt;regexp.compile(pattern[, flags]) 以数： regexp 正则表达式的名称，可以是变量名或文字串。 &lt;br /&gt;pattern 正则表达式的定义文本。 flags 如果指定的话，可以是下面其中的一个： "g": 匹配所有可能的字串 &lt;br /&gt;"i": 忽略大小写 "gi": 匹配所有可能的字串及忽略大小写 描述： &lt;br /&gt;使用compile方法来编译一个正则表达式 created with the RegExp constructor function。这样 &lt;br /&gt;就强制正则表达式只编译一次，而不是每次遇到正则表达式的时候都编译一次。当你确认正则表达式能 &lt;br /&gt;保持不变的时候可使用compile 方法来编译它(在获得它的匹配模式后)，这样就可以在脚本中重复多次使用它。 &lt;br /&gt;你亦可以使用compile 方法来改变在运行期间改变正则表达式。例如，假如正则表达式发生变化， &lt;br /&gt;你可以使用compile方法来重新编译该对象来提高使用效率。 &lt;br /&gt;使用该方法将改变正则表达式的source, global和ignoreCasesource属性的值。 constructor &lt;br /&gt;指出建立对象原型的function。注意这个属性的值由函数本身提供，而不是一个字串包含RegExp的name.Property提供。 &lt;br /&gt;在JavaScript 1.1, NES 2.0以上版本提供 ECMA版本ECMA-262 描述：参考Object.constructor. &lt;br /&gt;exec方法 在指定的字符串运行匹配搜索。返回一个结果数组。 是RegExp的方法 &lt;br /&gt;在JavaScript 1.2, NES 3.0以上版本提供 语法： regexp.exec([str])regexp([str]) &lt;br /&gt;参数： regexp，正则表达式的名称，可以是一个变量名或文字定义串。 &lt;br /&gt;str，要匹配正则表达式的字符串，如果省略，将使用RegExp.input的值。 &lt;br /&gt;描述：就如在语法描述中的一样，正则表达工的exec方法能够被直接调用(使用regexp.exec(str))或者间接调用(使用regexp(str))。 &lt;br /&gt;假如你只是运行以找出是否匹配，可以使用String搜索方法。 &lt;br /&gt;假如匹配成功，exec方法返回一个数组并且更新正则表达式对象属性的值和预先定义的正则表达式对象、RegExp。如果匹配失败，exec方法返回null。 &lt;br /&gt;请看下例： &amp;lt;SCRIPT LANGUAGE="JavaScript1.2"&amp;gt; //匹配一个b接着一个或多个d，再接着一个b &lt;br /&gt;//忽略大小写 myRe=/d(b+)(d)/ig; myArray = myRe.exec("cdbBdbsbz"); &lt;br /&gt;&amp;lt;/SCRIPT&amp;gt; 下面是该脚本的返回值：对象 属性/Index 描述 例子 &lt;br /&gt;myArray &lt;/p&gt;&lt;p&gt;myArray的内容 ["dbBd", "bB", "d"] &lt;br /&gt;index &lt;br /&gt;基于0的匹配index 1 &lt;br /&gt;input &lt;br /&gt;原始字符串 cdbBdbsbz &lt;br /&gt;[0] &lt;br /&gt;最后匹配的字符 dbBd &lt;br /&gt;[1], ...[n] &lt;br /&gt;用圆括号括住的匹配字符串，如果有的话。不限制括号的个数。 [1] = bB &lt;br /&gt;[2] = d &lt;br /&gt;myRe &lt;br /&gt;lastIndex &lt;br /&gt;开始下次匹配操作的index值 5 &lt;br /&gt;ignoreCase &lt;br /&gt;指出"i"是否使用以忽略大小写 true &lt;br /&gt;global &lt;br /&gt;指出是否使用"g"标记来进行匹配所有可能的字串 true &lt;br /&gt;source &lt;br /&gt;定义模式的文本字符串 d(b+)(d) &lt;br /&gt;RegExp &lt;br /&gt;lastMatch$&amp;amp; &lt;br /&gt;最后匹配的字符 dbBd &lt;br /&gt;leftContext$\Q &lt;br /&gt;最新匹配前面的子串 c &lt;br /&gt;rightContext$' &lt;br /&gt;最新匹配后面的子串 bsbz &lt;br /&gt;$1, ...$9 &lt;br /&gt;圆括号内的匹配子串，如果有的话。圆括号的个数不受限制，但RegExp只能保留最后9个 $1 = bB &lt;br /&gt;$2 = d &lt;br /&gt;lastParen $+ &lt;br /&gt;最后一个加上圆括号的匹配子串，如果有的话 d &lt;/p&gt;&lt;p&gt;假如你的正则表达式使用了"g"标记，你可以多次使用exec 方法来连续匹配相同的串。当你这样做 &lt;br /&gt;的时候，新的匹配将从由正则表达式的lastIndex 属性值确定的子串中开始。例如，假定你使用下面的脚本： &lt;br /&gt;&amp;lt;SCRIPT LANGUAGE="JavaScript1.2"&amp;gt; myRe=/ab*/g;str = "abbcdefabh" &lt;br /&gt;myArray = myRe.exec(str); &lt;br /&gt;document.writeln("Found "+myArray[0]+". Next match starts at "+myRe.lastIndex) &lt;br /&gt;mySecondArray = myRe.exec(str); &lt;br /&gt;document.writeln("Found "+mySecondArray[0]+". Next match starts at "+myRe.lastIndex) &lt;br /&gt;&amp;lt;/SCRIPT&amp;gt; 这个脚本显示如下结果： Found abb. Next match starts at 3 &lt;br /&gt;Found ab. Next match starts at 9 例子： &lt;br /&gt;在下面的例子中，用户输入一个名字，脚本根据输入执行匹配操作。接着检查数组看是否和其它用户的名字匹配。 &lt;br /&gt;本脚本假定已注册的用户的姓已经存进了数组A中，或许从一个数据库中取得。 &amp;lt;HTML&amp;gt; &lt;br /&gt;&amp;lt;SCRIPT LANGUAGE="JavaScript1.2"&amp;gt; A = ["zhao","qian","sun","li","liang"] &lt;br /&gt;function lookup() { firstName = /\w+/i(); if (!firstName) &lt;br /&gt;window.alert (RegExp.input + "非法输入"); else { count=0; &lt;br /&gt;for (i=0;i 输入你的姓然后按回车键。 &lt;br /&gt;&amp;lt;FORM&amp;gt;&amp;lt;INPUT TYPE:"TEXT" NAME="FirstName" onChange="lookup(this);"&amp;gt;&amp;lt;/FORM&amp;gt; &lt;br /&gt;&amp;lt;/HTML&amp;gt; global属性 正则表达式中是否使用了"g"标记。 RegExp属性，只读 &lt;br /&gt;在JavaScript 1.2, NES 3.0以上版本提供 描述： global是一个个别正则表达式对象的属性 &lt;br /&gt;如果使用了"g"标记，global的值为true；否则为 false。"g"标记指定正则表达式测试所有可能的匹配。 &lt;br /&gt;你不能直接改变该属性的值，但可以调用compile方法来改变它。 ignoreCase 检查正则表达式是否使用了"i"标记 &lt;br /&gt;RegExp属性，只读 在JavaScript 1.2, NES 3.0以上版本提供 描述： &lt;br /&gt;ignoreCase是个别正则表达式对象的一个属性。 &lt;br /&gt;如果使用了"i"标记，则返回true，否则返回false。"i"标记指示在进行匹配的时候忽略大小写。 &lt;br /&gt;你不能直接改变该属性的值，但可以通过调用compile方法来改变它 input 指出正则表达式要测试那个字串。$_是这个属性的另一个名字。 &lt;br /&gt;RegExp的属性，静态 在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：因为input是静态的，不是某个个别的正则表达式对象的属性。你也可以使用 RegExp.input来表示。 &lt;br /&gt;如果没有给正则表达式的exec或test方法提供字符串，并且RegExp.input中有值，则使用它的值来调用该方法。 &lt;br /&gt;脚本或浏览器能够预置input属性。如果被预置了值且调用exec或 test方法的时候没有提供字符串 &lt;br /&gt;则调用exec或test的时候使用input的值。input可以被浏览器以下面的方式设置： &lt;br /&gt;当text表单域处理句柄被调用的时候，input被设置为该text输入的字串。 &lt;br /&gt;当textarea表单域处理句柄被调用的时候，input被设置为textarea域内输入的字串。注意multili &lt;br /&gt;ne亦被设置成true从而能匹配多行文本。 当select表单域处理句柄被调用的时候，input被设置成selected text的值。 &lt;br /&gt;当链接对象的处理句柄被调用的时候，input被设置成&amp;lt;A HREF=...&amp;gt;和&amp;lt;/A&amp;gt;之间的字符串。 &lt;br /&gt;事件理现句柄处理完毕后，input属性的值被清除。 lastIndex 可读/可写的一个整数属性，指出下一次匹配从哪里开始。 &lt;br /&gt;RegExp的属性 在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：lastIndex 是个别的正则表达式对象的属性。 这个属性只有当正则表达式的"g"标记被使用以进行全串匹配的时候才被设置。实行以下规则： &lt;br /&gt;如果lastIndex大小字符串的长度，regexp.test和regexp.exec失败，且lastIndex被设为0。 &lt;br /&gt;如果lastIndex等于字串的长度且正则表达式匹配空字符串，则正则表达式从lastIndex的位置开始匹配。 &lt;br /&gt;如果lastIndex等于字符串的长度且正则表达式不匹配空字符串，则正则表达式不匹配input，且lastIndex被置为0。 &lt;br /&gt;否则，lastIndex被设置成最近一次匹配的下一点。 例如，按下面的顺序执行脚本： re = /(hi)?/g 匹配空字符串 &lt;br /&gt;re("hi") 返回["hi", "hi"]，lastIndex置为2 &lt;br /&gt;re("hi") 返回[""]，一个空数组，它的下标为0的元素就是匹配字符串。在这种情况下，返回空 &lt;br /&gt;串是因为lastIndex等于2(且仍然是2)，并且"hi"的长度也是2。 lastMatch 最后一次匹配字符串，$&amp;amp;是同样的意思。 &lt;br /&gt;RegExp的属性，静态，只读 在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：因为lastMatch是静态的，所以它不是个别指定正则表达式的属性。你也可以使用RegExp.lastMatch。 lastParen &lt;br /&gt;最后一次加上括号的匹配字符串，如果有的话。$+是同样的意思。 RegExp属性，静态，只读 &lt;br /&gt;在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：因为lastParen是静态的，它不是某个个别正则式的属性，你可以使用RegExp.lastParen 表达同样的意思。 &lt;br /&gt;leftContext 最近一次匹配前面的子串，$`具有相同的意思。 RegExp的属性，静态，只读 &lt;br /&gt;在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：因为leftContext是静态的，不是某一个正则表达式的属性，所以可以使用RegExp.leftContext来表达想同的意思。 &lt;br /&gt;multiline 反映是否匹配多行文本，$*是相同的意思。 RegExp的属性，静态 &lt;br /&gt;在JavaScript 1.2, NES 3.0以上版本提供 &lt;br /&gt;描述：因为multiline是静态的，而不是某个个别正则表达式的属性，所以能够用RegExp.multiline表达相同的意思。 &lt;br /&gt;如果允许匹配多行文本，则multiline为true，如果搜索必须在换行时停止，则为false。 &lt;br /&gt;脚本或浏览器能够设置multiline属性。当一个textarea的事件处理句柄被调用的时候，multiline &lt;br /&gt;被置为true。在事件处理句柄处理完毕后，multiline属性值被清除。也就是说，如果你设置了multili &lt;br /&gt;ne为true，则执行任何的事件处理句柄后，multiline被置为false。 prototype &lt;br /&gt;描绘类的原型。你可以根据要求使用prototype来增加类的属性或方法。为了获得prototypes 的资 &lt;br /&gt;料，请参阅RegExp的Function.prototype.Property属性。 从JavaScript 1.1, NES 2.0版本开始提供 &lt;br /&gt;ECMA版本ECMA-262 rightContext 最后一次匹配的右边的字符串，$'是同样的效果。 &lt;br /&gt;RegExp的属性，静态，只读 从 JavaScript 1.2, NES 3.0以上版本开始提供 &lt;br /&gt;描述：因为rightContext是静态的，不是某个个别正则表达工的属性，可以使用RegExp.rightContext来达到相同的效果。 &lt;br /&gt;source 一个只读属性，包含正则表达式定义的模式，不包侨forward slashes和"g"或"i"标记。 RegExp的属性，只读 &lt;br /&gt;从JavaScript 1.2, NES 3.0以上版本开始提供 &lt;br /&gt;描述：source是个别正则表达式对象的属性，你不能直接改变它的值，但可以通过调用compile 方法来改变它。 test &lt;br /&gt;执行指定字符串的正则表达式匹配搜索，返回true或false。 RegExp的方法 &lt;br /&gt;从JavaScript 1.2, NES 3.0以上版本开始提供 语法：regexp.test([str]) &lt;br /&gt;参数：regexp，正则表达式的名称，可以是变量名或正则表达式定义文字串 &lt;br /&gt;str，要匹配的字符串，如果省略，将使用RegExp.input的值为作参数 &lt;br /&gt;描述：当你需要知道一个字符串能否匹配某个正则表达工，可以使用test方法(与String.search方 &lt;br /&gt;法类似)； 为了获得更多的信息(但速度将变慢)，可以使用exec方法(与String.match方法类似)。 例子：下面的例子显示test是否成功的提示： &lt;br /&gt;function testinput(re, str){ &lt;br /&gt;if (re.test(str)) midstring = " contains "; &lt;br /&gt;else midstring = " does not contain "; &lt;br /&gt;document.write (str + midstring + re.source); } toSource &lt;br /&gt;返回一个字符串象征对象的源码 RegExp的方法 从JavaScript 1.3以上版本开始提供 语法：toSource() &lt;br /&gt;参数：没有 描述：toSource方法返回下述的值： 对于内置的RegExp对象，toSource返回下面的字符象征源码不可用： &lt;br /&gt;function Boolean(){ [native code] } &lt;br /&gt;在RegExp场合中, toSource返回象征源码的字符串，通常这个方法是由JavaScript内部自动调用而不是不代码中显式调用。 &lt;br /&gt;更多请看Object.toSource toString 返回描绘指定对象的字符串。 RegExp的方法 &lt;br /&gt;从JavaScript 1.1, NES 2.0开始提供 ECMA版本ECMA-262 语法：toString() 参数：无 &lt;br /&gt;描述：RegExp对象不考虑Object对象的toString方法；它不继承Object.toString，对于RegExp 对 &lt;br /&gt;象，toString方法返回一个代表该对象的字符串。 例如：下面的例子显示象征RegExp对象的字符串 &lt;br /&gt;myExp = new RegExp("a+b+c"); alert(myExp.toString()) &lt;br /&gt;displays "/a+b+c/" 更多请看：Object.toString valueOf 返回一个RegExp对象的原始值 &lt;br /&gt;RegExp的方法 从JavaScript 1.1版本开始提供 ECMA版本：ECMA-262 语法：valueOf() &lt;br /&gt;参数：无 描述：RegExp的valueOf方法以字符串形式返回RegExp对象的原始值，这个值与RegExp.toString相等。 &lt;br /&gt;该方法通常由JavaScript内部自动调用而不是显式调用 例子： myExp = new RegExp("a+b+c"); &lt;br /&gt;alert(myExp.valueOf()) displays "/a+b+c/" &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;正则表达式在javascript中的几个实例1(转) &lt;/strong&gt;&lt;/p&gt;&lt;p&gt;! 去除字符串两端空格的处理 &lt;br /&gt;&lt;br /&gt;如果采用传统的方式,就要可能就要采用下面的方式了 &lt;br /&gt;//清除左边空格 &lt;br /&gt;function js_ltrim(deststr) &lt;br /&gt;{ &lt;br /&gt;if(deststr==null)return ""; &lt;br /&gt;var pos=0; &lt;br /&gt;var retStr=new String(deststr); &lt;br /&gt;if (retStr.lenght==0) return retStr; &lt;br /&gt;while (retStr.substring(pos,pos+1)==" ") pos++; &lt;br /&gt;retStr=retStr.substring(pos); &lt;br /&gt;return(retStr); &lt;br /&gt;} &lt;br /&gt;//清除右边空格 &lt;br /&gt;function js_rtrim(deststr) &lt;br /&gt;{ &lt;br /&gt;if(deststr==null)return ""; &lt;br /&gt;var retStr=new String(deststr); &lt;br /&gt;var pos=retStr.length; &lt;br /&gt;if (pos==0) return retStr; &lt;br /&gt;while (pos &amp;amp;&amp;amp; retStr.substring(pos-1,pos)==" " ) pos--; &lt;br /&gt;retStr=retStr.substring(0,pos); &lt;br /&gt;return(retStr); &lt;br /&gt;} &lt;br /&gt;//清除左边和右边空格 &lt;br /&gt;function js_trim(deststr) &lt;br /&gt;{ &lt;br /&gt;if(deststr==null)return ""; &lt;br /&gt;var retStr=new String(deststr); &lt;br /&gt;var pos=retStr.length; &lt;br /&gt;if (pos==0) return retStr; &lt;br /&gt;retStr=js_ltrim(retStr); &lt;br /&gt;retStr=js_rtrim(retStr); &lt;br /&gt;return retStr; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;采用正则表达式,来去除两边的空格,只需以下代码 &lt;br /&gt;String.prototype.trim = function() &lt;br /&gt;{ &lt;br /&gt;return this.replace(/(^\s*)|(\s*$)/g, ""); &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;一句就搞定了, &lt;br /&gt;可见正则表达式为我们节省了相当的编写代码量 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;! 移动手机号的校验 &lt;br /&gt;&lt;br /&gt;如果采用传统的校验方式至少就要完成下面三步的校验, &lt;br /&gt;(1). 是否是数字 &lt;br /&gt;(2).是否是11位 &lt;br /&gt;(3).数字的第三位是否是5,6,7,8,9 &lt;br /&gt;如果采用正则表达式校验,只需以下代码 &lt;br /&gt;function checkMobile1(form) &lt;br /&gt;{ &lt;br /&gt;if (form.mobile.value &amp;gt; "") &lt;br /&gt;{ &lt;br /&gt;var reg=/13[5,6,7,8,9]\d{8}/; &lt;br /&gt;if ( form.mobile.value.match(reg)== null) &lt;br /&gt;{ &lt;br /&gt;alert("请输入正确的移动手机号码！"); &lt;br /&gt;form.mobile.focus(); return false; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;从上面的代码可以看出校验移动手机号只需定义一个var reg=/13[5,6,7,8,9]\d{8}/;模式匹配串就可以完成合法性校验了 &lt;br /&gt;&lt;br /&gt;! URL的校验, &lt;br /&gt;条件:必须以http:// 或 https:// 开头, 端口号必须为在1－65535 之间, 以下代码完成了合法性校验 &lt;br /&gt;&lt;br /&gt;//obj:数据对象 &lt;br /&gt;//dispStr :失败提示内容显示字符串 &lt;br /&gt;function checkUrlValid( obj, dispStr) &lt;br /&gt;{ &lt;br /&gt;if(obj == null) &lt;br /&gt;{ &lt;br /&gt;alert("传入对象为空"); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;var str = obj.value; &lt;br /&gt;&lt;br /&gt;var urlpatern0 = /^https?:\/\/.+$/i; &lt;br /&gt;if(!urlpatern0.test(str)) &lt;br /&gt;{ &lt;br /&gt;alert(dispStr+"不合法：必须以'http:\/\/'或'https:\/\/'开头!"); &lt;br /&gt;obj.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;var urlpatern2= /^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?.+$/i; &lt;br /&gt;if(!urlpatern2.test(str)) &lt;br /&gt;{ &lt;br /&gt;alert(dispStr+"端口号必须为数字且应在1－65535之间!"); &lt;br /&gt;obj.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;var urlpatern1 =/^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&amp;amp;?[a-zA-Z0-9_-](\?)?)*)*$/i; &lt;br /&gt;&lt;br /&gt;if(!urlpatern1.test(str)) &lt;br /&gt;{ &lt;br /&gt;alert(dispStr+"不合法,请检查!"); &lt;br /&gt;obj.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;var s = "0"; &lt;br /&gt;var t =0; &lt;br /&gt;var re = new RegExp(":\\d+","ig"); &lt;br /&gt;while((arr = re.exec(str))!=null) &lt;br /&gt;{ &lt;br /&gt;s = str.substring(RegExp.index+1,RegExp.lastIndex); &lt;br /&gt;&lt;br /&gt;if(s.substring(0,1)=="0") &lt;br /&gt;{ &lt;br /&gt;alert(dispStr+"端口号不能以0开头!"); &lt;br /&gt;obj.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;t = parseInt(s); &lt;br /&gt;if(t&amp;lt;1 || t &amp;gt;65535) &lt;br /&gt;{ &lt;br /&gt;alert(dispStr+"端口号必须为数字且应在1－65535之间!"); &lt;br /&gt;obj.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;&lt;br /&gt;对url的校验,看上去有很多的代码,这是因为要给予出错提示, 否则只需var urlpatern1 =/^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&amp;amp;?[a-zA-Z0-9_-](\?)?)*)*$/i; 一句就可以校验出url合法性了 &lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td colspan="2"&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;img alt="" src="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/images/file.gif" /&gt;正则表达式在JavaScript应用 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;时间戳: 2004-11-30 15:29:30 人气: 23 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;作者: AnyRock 来源:www.mending.cn &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="docdataarea" valign="top"&gt;-------------------------------------------------------------- &lt;br /&gt;去掉字符串头尾多余的空格 &lt;br /&gt;/g是全文查找所有匹配 &lt;br /&gt;&lt;br /&gt;function String.prototype.Trim(){return this.replace(/(^\s*)|(\s*$)/g, "");} &lt;br /&gt;&lt;br /&gt;function String.prototype.LTrim(){return this.replace(/(^\s*)/g, "");} &lt;br /&gt;&lt;br /&gt;function String.prototype.RTrim(){return this.replace(/(\s*$)/g, "");} &lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------- &lt;br /&gt;应用：计算字符串的长度（一个双字节字符长度计2，ASCII字符计1） &lt;br /&gt;&lt;br /&gt;String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} &lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------- &lt;br /&gt;应用：javascript中没有像vbscript那样的trim函数，我们就可以利用这个表达式来实现，如下： &lt;br /&gt;&lt;br /&gt;String.prototype.trim = function() &lt;br /&gt;{ &lt;br /&gt;return this.replace(/(^\s*)|(\s*$)/g, ""); &lt;br /&gt;} &lt;br /&gt;得用正则表达式从URL地址中提取文件名的javascript程序，如下结果为page1 &lt;br /&gt;&lt;br /&gt;s="http://www.9499.net/page1.htm" &lt;br /&gt;s=s.replace(/(.*\/){0,}([^\.]+).*/ig,"$2") &lt;br /&gt;alert(s) &lt;br /&gt;&lt;br /&gt;##利用正则表达式限制网页表单里的文本框输入内容： &lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------- &lt;br /&gt;用正则表达式限制只能输入中文：onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,'))" &lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------- &lt;br /&gt;用正则表达式限制只能输入全角字符： onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,'))" &lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------- &lt;br /&gt;用正则表达式限制只能输入数字：onkeyup="value=value.replace(/[^\d]/g,') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,'))" &lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------- &lt;br /&gt;用正则表达式限制只能输入数字和英文：onkeyup="value=value.replace(/[\W]/g,') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,'))" &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top" align="center"&gt;&lt;img height="8" alt="" src="http://www.cnblogs.com/itecho/admin/file:///J:/mdbbs/images/topiclistbar2.gif" width="550" /&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;最近更新: AnyRock 2004-11-30 15:38:2 &lt;/td&gt;&lt;td align="right"&gt;&lt;a href="http://www.cnblogs.com/itecho/admin/file:///J:/www.cn263.cn/RegExp.htm#"&gt;&lt;font color="#355ea0"&gt;返回页首 &lt;/font&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;strong&gt;用正则表达式和javascript对表单进行全面验证 &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;代码：&amp;lt;!-- &lt;br /&gt;使用时请将下面的javascript代码存到一个单一的js文件中。 &lt;br /&gt;1、表单要求 &lt;br /&gt;&amp;lt;form name="formname" onSubmit="return validateForm(this)"&amp;gt;&amp;lt;/form&amp;gt; &lt;br /&gt;将对表单中的所有以下类型的域依次验证，所有验证是去除了前导和后缀空格的，要注意是区分大小写的。 &lt;br /&gt;2、空值验证 &lt;br /&gt;表单中任意域加上emptyInfo属性将对此域是否为空进行验证（可以和最大长度验证\一般验证方式同时使用）。 &lt;br /&gt;无此属性视为此域允许空值。 &lt;br /&gt; 如：&amp;lt;input type="text" name="fieldNamename" emptyInfo="字段不能为空！"&amp;gt; &lt;br /&gt;3、最大长度验证（可以和空值验证、一般验证方式同时使用）： &lt;br /&gt;&amp;lt;input type="text" name="fieldNamename" maxlength="20" lengthInfo="最大长度不能超过20！"&amp;gt; &lt;br /&gt;或,&amp;lt;textarea maxlength="2000" lengthInfo="最大长度不能超过2000！"&amp;gt; &lt;br /&gt;3、一般验证方式(不对空值做验证）: &lt;br /&gt; 如：&amp;lt;input type="text" validator="^(19|20)[0-9]{2}$" errorInfo="不正确的年份!" &amp;gt; &lt;br /&gt;4、标准验证(不与其它验证方式同时使用）： &lt;br /&gt;全部通过&amp;lt;input type="hidden"&amp;gt;来实现，并且不需要name属性以免提交到服务器。 &lt;br /&gt; 4.1、合法日期验证： &lt;br /&gt;&amp;lt;input type="text" name="yearfieldName" value="2004"&amp;gt;注：这里也可以是&amp;lt;select name="yearfieldName"&amp;gt;&amp;lt;/select&amp;gt;，以下同 &lt;br /&gt;&amp;lt;input type="text" name="monthfieldName" value="02"&amp;gt; &lt;br /&gt;&amp;lt;input type="text" name="dayfieldName" value="03"&amp;gt; &lt;br /&gt;&amp;lt;input type="hidden" validatorType="DateGroup" year="yearfieldName" month="monthfieldName" day="dayfieldName" errorInfo="不正确的日期!"&amp;gt; &lt;br /&gt;yearfieldName、monthfieldName、dayfieldName分别为年月日字段，月和日可以是两位(MM)或一位格式(M)， &lt;br /&gt;此处不对每个字段分别检验(如果要检验，请在年月日三个域分别使用前面的一般验证方式），只对日期的最大值是否合法检查; &lt;br /&gt;4.2、日期格式验证(请注意，此验证不对日期是否有效进行验证，还未找到从格式中得到年月日数据的方法^_^)： &lt;br /&gt;&amp;lt;input type="text" name="datefieldName" value="2003-01-03 21:31:00"&amp;gt; &lt;br /&gt;&amp;lt;input type="hidden" validatorType="Date" fieldName="datefieldName"; format="yyyy-MM-dd HH:mm:ss" errorInfo="不正确的日期!"&amp;gt; &lt;br /&gt;其中格式仅对y、M、d、H、m、s进行支持(其它字符视为非时间的字符) &lt;br /&gt;4.3、列表验证： &lt;br /&gt;检验列表(checkbox、redio、select)是否至少选中了一条记录(对select主要用于多项选择) &lt;br /&gt;&amp;lt;input type="checkbox" name="checkbox1"&amp;gt; &lt;br /&gt;&amp;lt;input type="hidden" validatorType="Checkbox" fieldName="checkbox1" errorInfo="请至少选中一条记录!"&amp;gt; &lt;br /&gt;其中validatorType可以是Checkbox、R、Select; &lt;br /&gt;对于一个select表单，如果要求选择一条不能是第一条的记录，请用下列方式: &lt;br /&gt;&amp;lt;select name="select1" emptyInfo="请选择一个选项!"&amp;gt; &lt;br /&gt;&amp;lt;option value=""&amp;gt;==请选择==&amp;lt;/option&amp;gt; &lt;br /&gt;&amp;lt;option value="1"&amp;gt;1&amp;lt;/option&amp;gt; &lt;br /&gt;&amp;lt;select&amp;gt; &lt;br /&gt;4.4、Email验证： &lt;br /&gt;&amp;lt;input type="text" name="email"&amp;gt; &lt;br /&gt;&amp;lt;input type="hidden" fieldName="email" validatorType="Email" separator="," errorInfo="不正确的Email!"&amp;gt; &lt;br /&gt;其中separator为可选项，表示输入多个email时的分隔符(无此选项只能是一个地址） &lt;br /&gt;4.5、加入其它javascript操作： &lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt; &lt;br /&gt;function functionname(){ &lt;br /&gt;自定义方法 &lt;br /&gt;} &lt;br /&gt;&amp;lt;/script&amp;gt; &lt;br /&gt;表单中加入&amp;lt;input type="hidden" validatorType="javascript" functionName="functionname"&amp;gt;（此时emptyInfo等属性无效） &lt;br /&gt;时将调用function属性中指定的javascript方法（要求方法返回true或false，返回false将不再验证表单，也不提交表单)。 &lt;br /&gt;5、在表单通过验证提交前disable一个按钮（也可将其它域disable,不能与其它验证同在一个域)，不要求按钮是表单中的最后一个 &lt;br /&gt;&amp;lt;input type="button" name="提交" validatorType="disable"&amp;gt; &lt;br /&gt;6、不验证表单 &lt;br /&gt; &amp;lt;input type="hidden" name="validate" value="0" functionName="functionname"&amp;gt; &lt;br /&gt;当validator域值为0时不对表单进行验证，直接提交表单或执行指定function并返回true后提交表单 &lt;br /&gt;functionName为可选 &lt;/p&gt;&lt;p&gt;--&amp;gt; &lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt; &lt;br /&gt;function getStringLength(str){ &lt;br /&gt;var endvalue=0; &lt;br /&gt;var sourcestr=new String(str); &lt;br /&gt;var tempstr; &lt;br /&gt;for (var strposition = 0; strposition &amp;lt; sourcestr.length; strposition ++) { &lt;br /&gt;tempstr=sourcestr.charAt(strposition); &lt;br /&gt;if (tempstr.charCodeAt(0)&amp;gt;255 || tempstr.charCodeAt(0)&amp;lt;0) { &lt;br /&gt;endvalue=endvalue+2; &lt;br /&gt;} else { &lt;br /&gt;endvalue=endvalue+1; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;return(endvalue); &lt;br /&gt;} &lt;br /&gt;function trim(str){ &lt;br /&gt;if(str==null) return ""; &lt;br /&gt;if(str.length==0) return ""; &lt;br /&gt;var i=0,j=str.length-1,c; &lt;br /&gt;for(;i&amp;lt;str.length;i++){ &lt;br /&gt;c=str.charAt(i); &lt;br /&gt;if(c!=' ') break; &lt;br /&gt;} &lt;br /&gt;for(;j&amp;gt;-1;j--){ &lt;br /&gt;c=str.charAt(j); &lt;br /&gt;if(c!=' ') break; &lt;br /&gt;} &lt;br /&gt;if(i&amp;gt;j) return ""; &lt;br /&gt;return str.substring(i,j+1); &lt;br /&gt;} &lt;br /&gt;function validateDate(date,format,alt){ &lt;br /&gt;var time=trim(date.value); &lt;br /&gt;if(time=="") return; &lt;br /&gt;var reg=format; &lt;br /&gt;var reg=reg.replace(/yyyy/,"[0-9]{4}"); &lt;br /&gt;var reg=reg.replace(/yy/,"[0-9]{2}"); &lt;br /&gt;var reg=reg.replace(/MM/,"((0[1-9])|1[0-2])"); &lt;br /&gt;var reg=reg.replace(/M/,"(([1-9])|1[0-2])"); &lt;br /&gt;var reg=reg.replace(/dd/,"((0[1-9])|([1-2][0-9])|30|31)"); &lt;br /&gt;var reg=reg.replace(/d/,"([1-9]|[1-2][0-9]|30|31))"); &lt;br /&gt;var reg=reg.replace(/HH/,"(([0-1][0-9])|20|21|22|23)"); &lt;br /&gt;var reg=reg.replace(/H/,"([0-9]|1[0-9]|20|21|22|23)"); &lt;br /&gt;var reg=reg.replace(/mm/,"([0-5][0-9])"); &lt;br /&gt;var reg=reg.replace(/m/,"([0-9]|([1-5][0-9]))"); &lt;br /&gt;var reg=reg.replace(/ss/,"([0-5][0-9])"); &lt;br /&gt;var reg=reg.replace(/s/,"([0-9]|([1-5][0-9]))"); &lt;br /&gt;reg=new RegExp("^"+reg+"$"); &lt;br /&gt;if(reg.test(time)==false){//验证格式是否合法 &lt;br /&gt;alert(alt); &lt;br /&gt;date.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;function validateDateGroup(year,month,day,alt){ &lt;br /&gt;var array=new Array(31,28,31,30,31,30,31,31,30,31,30,31); &lt;br /&gt;var y=parseInt(year.value); &lt;br /&gt;var m=parseInt(month.value); &lt;br /&gt;var d=parseInt(day.value); &lt;br /&gt;var maxday=array[m-1]; &lt;br /&gt;if(m==2){ &lt;br /&gt;if((y%4==0&amp;amp;&amp;amp;y%100!=0)||y%400==0){ &lt;br /&gt;maxday=29; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;if(d&amp;gt;maxday){ &lt;br /&gt;alert(alt); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;function validateCheckbox(obj,alt){ &lt;br /&gt;var rs=false; &lt;br /&gt;if(obj!=null){ &lt;br /&gt;if(obj.length==null){ &lt;br /&gt;return obj.checked; &lt;br /&gt;} &lt;br /&gt;for(i=0;i&amp;lt;obj.length;i++){ &lt;br /&gt;if(obj[i].checked==true){ &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;alert(alt); &lt;br /&gt;return rs; &lt;br /&gt;} &lt;br /&gt;function validateRadio(obj,alt){ &lt;br /&gt;var rs=false; &lt;br /&gt;if(obj!=null){ &lt;br /&gt;if(obj.length==null){ &lt;br /&gt;return obj.checked; &lt;br /&gt;} &lt;br /&gt;for(i=0;i&amp;lt;obj.length;i++){ &lt;br /&gt;if(obj[i].checked==true){ &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;alert(alt); &lt;br /&gt;return rs; &lt;br /&gt;} &lt;br /&gt;function validateSelect(obj,alt){ &lt;br /&gt;var rs=false; &lt;br /&gt;if(obj!=null){ &lt;br /&gt;for(i=0;i&amp;lt;obj.options.length;i++){ &lt;br /&gt;if(obj.options[i].selected==true){ &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;alert(alt); &lt;br /&gt;return rs; &lt;br /&gt;} &lt;br /&gt;function validateEmail(email,alt,separator){ &lt;br /&gt;var mail=trim(email.value); &lt;br /&gt;if(mail=="") return; &lt;br /&gt;var em; &lt;br /&gt;var myReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/; &lt;br /&gt;if(separator==null){ &lt;br /&gt;if(myReg.test(email.value)==false){ &lt;br /&gt;alert(alt); &lt;br /&gt;email.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;else{ &lt;br /&gt;em=email.value.split(separator); &lt;br /&gt;for(i=0;i&amp;lt;em.length;i++){ &lt;br /&gt;em[i]=em[i].trim(); &lt;br /&gt;if(em[i].length&amp;gt;0&amp;amp;&amp;amp;myReg.test(em[i])==false){ &lt;br /&gt;alert(alt); &lt;br /&gt;email.focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;function validateForm(theForm){// 若验证通过则返回true &lt;br /&gt;var disableList=new Array(); &lt;br /&gt;var field = theForm.elements; // 将表单中的所有元素放入数组 &lt;br /&gt;for(var i = 0; i &amp;lt; field.length; i++){ &lt;br /&gt;var vali=theForm.validate; &lt;br /&gt;if(vali!=null){ &lt;br /&gt;if(vali.value=="0"){ &lt;br /&gt;var fun=vali.functionName; &lt;br /&gt;if(fun!=null){ &lt;br /&gt;return eval(fun+"()"); &lt;br /&gt;} &lt;br /&gt;else{ &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;/p&gt;&lt;p&gt;var empty=false; &lt;br /&gt;var value=trim(field[i].value); &lt;br /&gt;if(value.length==0){//是否空值 &lt;br /&gt;empty=true; &lt;br /&gt;} &lt;br /&gt;var emptyInfo=field[i].emptyInfo;//空值验证 &lt;br /&gt;if(emptyInfo!=null&amp;amp;&amp;amp;empty==true){ &lt;br /&gt;alert(emptyInfo); &lt;br /&gt;field[i].focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;var lengthInfo=field[i].lengthInfo;//最大长度验证 &lt;br /&gt;if(lengthInfo!=null&amp;amp;&amp;amp;getStringLength(value)&amp;gt;field[i].maxLength){ &lt;br /&gt;alert(lengthInfo); &lt;br /&gt;field[i].focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;/p&gt;&lt;p&gt;var validatorType=field[i].validatorType; &lt;br /&gt;if(validatorType!=null){//其它javascript &lt;br /&gt;var rs=true; &lt;br /&gt;if(validatorType=="javascript"){ &lt;br /&gt;eval("rs="+field[i].functionName+"()"); &lt;br /&gt;if(rs==false){ &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;else{ &lt;br /&gt;continue; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="disable"){//提交表单前disable的按钮 &lt;br /&gt;disableList.length++; &lt;br /&gt;disableList[disableList.length-1]=field[i]; &lt;br /&gt;continue; &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="Date"){ &lt;br /&gt;rs=validateDate(theForm.elements(field[i].fieldName),field[i].format,field[i].errorInfo); &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="DateGroup"){ &lt;br /&gt;rs=validateDateGroup(theForm.elements(field[i].year),theForm.elements(field[i].month),theForm.elements(field[i].day),field[i].errorInfo); &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="Checkbox"){ &lt;br /&gt;rs=validateCheckbox(theForm.elements(field[i].fieldName),field[i].errorInfo); &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="Radio"){ &lt;br /&gt;rs=validateRadio(theForm.elements(field[i].fieldName),field[i].errorInfo); &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="Select"){ &lt;br /&gt;rs=validateSelect(theForm.elements(field[i].fieldName),field[i].errorInfo); &lt;br /&gt;} &lt;br /&gt;else if(validatorType=="Email"){ &lt;br /&gt;rs=validateEmail(theForm.elements(field[i].fieldName),field[i].errorInfo); &lt;br /&gt;} &lt;br /&gt;else{ &lt;br /&gt;alert("验证类型不被支持, fieldName: "+field[i].name); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;if(rs==false){ &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;else{//一般验证 &lt;br /&gt;if(empty==false){ &lt;br /&gt;var v = field[i].validator; // 获取其validator属性 &lt;br /&gt;if(!v) continue; // 如果该属性不存在,忽略当前元素 &lt;br /&gt;var reg=new RegExp(v); &lt;br /&gt;if(reg.test(field[i].value)==false){ &lt;br /&gt;alert(field[i].errorInfo); &lt;br /&gt;field[i].focus(); &lt;br /&gt;return false; &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;for(i=0;i&amp;lt;disableList.length;i++){ &lt;br /&gt;disableList[i].disabled=true; &lt;br /&gt;} &lt;br /&gt;return true; &lt;br /&gt;} &lt;br /&gt;&amp;lt;/script&amp;gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/itecho/aggbug/2161395.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/itecho/archive/2011/08/31/2161395.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
