Attribute.cs
上传用户:zhangkuixh
上传日期:2013-09-30
资源大小:5473k
文件大小:2k
源码类别:

搜索引擎

开发平台:

C#

  1. using System;
  2. namespace HTMParse
  3. {
  4. /// <summary>
  5. /// Attribute holds one attribute, as is normally stored in
  6. /// an HTML or XML file. This includes a name, value and delimiter.
  7. /// 
  8. /// This spider is copyright 2003 by Jeff Heaton. However, it is
  9. /// released under a Limited GNU Public License (LGPL). You may 
  10. /// use it freely in your own programs. For the latest version visit
  11. /// http://www.jeffheaton.com.
  12. ///
  13. /// </summary>
  14. public class Attribute: ICloneable
  15. {
  16. /// <summary>
  17. /// The name of this attribute
  18. /// </summary>
  19. private string m_name;
  20. /// <summary>
  21. /// The value of this attribute
  22. /// </summary>
  23. private string m_value;
  24. /// <summary>
  25. /// The delimiter for the value of this
  26. /// attribute(i.e. " or ').
  27. /// </summary>
  28. private char m_delim;
  29. /// <summary>
  30. /// Construct a new Attribute.  The name, delim and value
  31. /// properties can be specified here.
  32. /// </summary>
  33. /// <param name="name">The name of this attribute.</param>
  34. /// <param name="value">The value of this attribute.</param>
  35. /// <param name="delim">The delimiter character for the value.</param>
  36. public Attribute(string name,string value,char delim)
  37. {
  38. m_name = name;
  39. m_value = value;
  40. m_delim = delim;
  41. }
  42. /// <summary>
  43. /// The default constructor.  Construct a blank attribute.
  44. /// </summary>
  45. public Attribute():this("","",(char)0)
  46. {
  47. }
  48. /// <summary>
  49. /// Construct an attribute without a delimiter.
  50. /// </summary>
  51. /// <param name="name">The name of this attribute.</param>
  52. /// <param name="value">The value of this attribute.</param>
  53. public Attribute(String name,String value):this(name,value,(char)0)
  54. {
  55. }
  56. /// <summary>
  57. /// The delimiter for this attribute.
  58. /// </summary>
  59. public char Delim
  60. {
  61. get 
  62. {
  63. return m_delim;
  64. }
  65. set 
  66. {
  67. m_delim = value;
  68. }
  69. }
  70. /// <summary>
  71. /// The name for this attribute.
  72. /// </summary>
  73. public string Name
  74. {
  75. get 
  76. {
  77. return m_name;
  78. }
  79. set 
  80. {
  81. m_name = value;
  82. }
  83. }
  84. /// <summary>
  85. /// The value for this attribute.
  86. /// </summary>
  87. public string Value
  88. {
  89. get 
  90. {
  91. return m_value;
  92. }
  93. set 
  94. {
  95. m_value = value;
  96. }
  97. }
  98. #region ICloneable Members
  99. public virtual object Clone()
  100. {
  101. return new Attribute(m_name,m_value,m_delim);
  102. }
  103. #endregion
  104. }
  105. }