﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-射手的博客-随笔分类-Delhi 自带方法和属性</title><link>http://www.cnitblog.com/Archer/category/8231.html</link><description>学习Delphi,需要一个记录学习的博客,</description><language>zh-cn</language><lastBuildDate>Tue, 27 Sep 2011 08:49:29 GMT</lastBuildDate><pubDate>Tue, 27 Sep 2011 08:49:29 GMT</pubDate><ttl>60</ttl><item><title>Trim 函数_分析</title><link>http://www.cnitblog.com/Archer/archive/2009/04/12/56282.html</link><dc:creator>Archer</dc:creator><author>Archer</author><pubDate>Sun, 12 Apr 2009 05:09:00 GMT</pubDate><guid>http://www.cnitblog.com/Archer/archive/2009/04/12/56282.html</guid><wfw:comment>http://www.cnitblog.com/Archer/comments/56282.html</wfw:comment><comments>http://www.cnitblog.com/Archer/archive/2009/04/12/56282.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/Archer/comments/commentRss/56282.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/Archer/services/trackbacks/56282.html</trackback:ping><description><![CDATA[

<p>Trim&nbsp;&nbsp; 去除字符串左右2边的空格<br>Delphi syntax:</p>
<p>function Trim(const S: string): string; overload;</p>
<p>function Trim(const S: WideString): WideString; overload;</p>
<div style="padding-right: 5px; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left-color: rgb(204, 204, 204); width: 98%; word-break: break-all; padding-top: 4px; background-color: rgb(238, 238, 238); "><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top"><span style="COLOR: #000000">function&nbsp;Trim(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000">&nbsp;S:&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">):&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">var<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;I,&nbsp;L:&nbsp;Integer;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;L&nbsp;:</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;Length(S); //获取字符串长度<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;I&nbsp;:</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;&nbsp;&nbsp; //因为需要判断第一个字符是否是空格.<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;(I&nbsp;</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">&nbsp;L)&nbsp;and&nbsp;(S[I]&nbsp;</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000">&nbsp;Inc(I);&nbsp; //<span style="BACKGROUND-COLOR: yellow">判断第一个字符是否是空格或则小于空格的不可见字符.利用ANSI或UNICode 对比</span>.如果是则I+1 跳过这个字符<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;I&nbsp;</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">&nbsp;L&nbsp;then&nbsp;Result&nbsp;:</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">''</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">&nbsp;S[L]&nbsp;</span><span style="COLOR: #000000">&lt;=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">do</span><span style="COLOR: #000000">&nbsp;Dec(L); //判断最后一个字符是否是不可见字符. 直到不为空格后执行下面的语句.<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;&nbsp;&nbsp;Result&nbsp;:</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;Copy(S,&nbsp;I,&nbsp;L&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;I&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">); //这里是从I开始(包括I字符),拷贝(L-I+1)个元素.</span></div><div style="padding-right: 5px; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left-color: rgb(204, 204, 204); width: 98%; word-break: break-all; padding-top: 4px; background-color: rgb(238, 238, 238); "><span style="COLOR: #000000">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {为什么这里是(L-I+1)呢! 因为比如I为5,L为10,10-5= 这里是拷贝5个字符(这里的目的是让第5字符开始拷贝到第10个字符).但实际上第5个字符到第10个字符有6个字符,这里只拷贝了5个.所以要加1}</span></div><div style="padding-right: 5px; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left-color: rgb(204, 204, 204); width: 98%; word-break: break-all; padding-top: 4px; background-color: rgb(238, 238, 238); "><span style="COLOR: #000000"><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">end;</span></div><img src ="http://www.cnitblog.com/Archer/aggbug/56282.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/Archer/" target="_blank">Archer</a> 2009-04-12 13:09 <a href="http://www.cnitblog.com/Archer/archive/2009/04/12/56282.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>FileExists 与 Not 的应用</title><link>http://www.cnitblog.com/Archer/archive/2009/04/08/56157.html</link><dc:creator>Archer</dc:creator><author>Archer</author><pubDate>Wed, 08 Apr 2009 03:54:00 GMT</pubDate><guid>http://www.cnitblog.com/Archer/archive/2009/04/08/56157.html</guid><wfw:comment>http://www.cnitblog.com/Archer/comments/56157.html</wfw:comment><comments>http://www.cnitblog.com/Archer/archive/2009/04/08/56157.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/Archer/comments/commentRss/56157.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/Archer/services/trackbacks/56157.html</trackback:ping><description><![CDATA[
&nbsp;
<div style="padding-right: 5px; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left-color: rgb(204, 204, 204); width: 98%; word-break: break-all; padding-top: 4px; background-color: rgb(238, 238, 238); "><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top"><span style="COLOR: #000000">begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top"></span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;not&nbsp;FileExists(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">C:\1.text</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)&nbsp;&nbsp;then<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;&nbsp;&nbsp;ShowMessage(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top">end;</span></div>
&nbsp;FileExists 方法:<br>&nbsp;&nbsp; 描述指定的文件是否存在.如果存在者返回 True 如果不存在者返回False;<br>&nbsp;Not 逻辑取反操作.<br>&nbsp; 在上面的例子当中C盘下是没有这个文件的.所以返回为False,(在If&nbsp; Then后的语句是不会被执行的)<br>在用Not 逻辑取反关键字后. 则使返回的False 取反操作变为了True 使判断执行他其中的语句.<br><br>上面的判断表达式的意思是 如果 这个文件不存在 则执行下面的语句.<img src ="http://www.cnitblog.com/Archer/aggbug/56157.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/Archer/" target="_blank">Archer</a> 2009-04-08 11:54 <a href="http://www.cnitblog.com/Archer/archive/2009/04/08/56157.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用StrLCopy时注意到的数组问题!</title><link>http://www.cnitblog.com/Archer/archive/2009/03/27/55799.html</link><dc:creator>Archer</dc:creator><author>Archer</author><pubDate>Fri, 27 Mar 2009 04:09:00 GMT</pubDate><guid>http://www.cnitblog.com/Archer/archive/2009/03/27/55799.html</guid><wfw:comment>http://www.cnitblog.com/Archer/comments/55799.html</wfw:comment><comments>http://www.cnitblog.com/Archer/archive/2009/03/27/55799.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/Archer/comments/commentRss/55799.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/Archer/services/trackbacks/55799.html</trackback:ping><description><![CDATA[
<p>function StrLCopy(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar;<font size="4"><br>功能 返回将指针字符串Source指定长度MaxLen复制到指针字符串Dest中;</font><br>uses SysUtils;<br>const MAX_BUFFER = 10;<br>procedure TForm1.Button1Click(Sender TObject);<br>var<br>&nbsp; Buffer: array [0..MAX_BUFFER] of char;&nbsp; //这里数组必须要从0下标开始,不然会报错.<br>begin<br>&nbsp; StrLCopy(Buffer, PChar(Edit1.Text), MAX_BUFFER);<br>&nbsp; Application.MessageBox(Buffer, 'StrLCopy example', [smbOK], smsInformation, smbOK, smbCancel);<br>end;</p><img src ="http://www.cnitblog.com/Archer/aggbug/55799.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/Archer/" target="_blank">Archer</a> 2009-03-27 12:09 <a href="http://www.cnitblog.com/Archer/archive/2009/03/27/55799.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>