温馨提示:代码在线浏览功能只能做为源码浏览参考,不能展示项目的全部,如果想更进一步了解该代码请下载:NETCMSv1.5(Build0509)完整源码版
当前文件路径:NetCMSv15/NetCMS.Content/Common/StrOperate.cs

1//====================================================== 2
//== (c)2008 aspxcms inc by NeTCMS v1.0 == 3
//== Forum:bbs.aspxcms.com == 4
//== Website:www.aspxcms.com == 5
//====================================================== 6
using System; 7
using System.IO; 8
using System.Web; 9
using System.Security.Cryptography; 10
using System.Text; 11
using System.Drawing; 12
using System.Drawing.Imaging;//图片 13
using System.Xml; 14
using System.Text.RegularExpressions; 15
16
namespace NetCMS.Content.Common 17
{ 18
19
/// <summary> 20
/// 用户操作类 21
/// 编码时间2007年2月27日 22
/// 编写人:杨晓彬 23
/// </summary> 24
public class CommStr 25
{ 26
/// <summary> 27
/// 查找XML配置文件 28
/// </summary> 29
/// <param name="xmlFilePath">XML配置文件的路径</param> 30
/// <param name="xmlTargetElement">药查找的元素名称</param> 31
/// <returns></returns> 32
private static string getXmlElementValue(string xmlFilePath, string xmlTargetElement) 33
{ 34
System.Xml.XmlDocument xdoc = new XmlDocument(); 35
xdoc.Load(HttpContext.Current.Server.MapPath(@"~\language\" + xmlFilePath)); 36
XmlElement root = xdoc.DocumentElement; 37
XmlNodeList elemList = root.GetElementsByTagName(xmlTargetElement); 38
string[] reslt = new string[elemList.Count]; 39
for (int i = 0; i < elemList.Count; i++) 40
{ 41
reslt[i] = elemList[i].InnerXml; 42
} 43
return reslt[0]; 44
} 45
/// <summary> 46
/// 字符串分页函数(一篇文章可以分多少页) 47
/// </summary> 48
/// <param name="str">待片理的字符串</param> 49
/// <param name="ct">每页显示的个数</param> 50
/// <param name="pagesize">分成多少页</param> 51
/// <returns></returns> 52
public string SubPage(string Input, int PageIndex, int Pagesize) 53
{ 54
int strl = Input.Length; 55
string s = null; 56
if (strl == (strl / Pagesize) * Pagesize)//看看页面的总记录是否能被每页的记录数整除 57
{ 58
for (int i = 1; i <= strl / Pagesize; i++) 59
{ 60
HttpContext.Current.Response.Write(" <a href=?page=" + i + ">" + (i) + "</" + "a> "); 61
} 62
s = Input.Substring(Pagesize * PageIndex - Pagesize, Pagesize); 63
} 64
else if (PageIndex * Pagesize > strl) 65
//在不被整除的情况下,最后一页的设置,如字符长13,每页3,则处理最后那一页的显示 66
{ 67
for (int i = 1; i <= (strl / Pagesize) + 1; i++) 68
{ 69
HttpContext.Current.Response.Write(" <a href=?page=" + i + ">" + (i) + "</" + "a> "); 70
} 71
s = Input.Substring((PageIndex - 1) * Pagesize, strl - (PageIndex - 1) * Pagesize); 72
} 73
else //在不被整除的情况下其他页面的显示设置 74
{ 75
for (int i = 1; i <= strl / Pagesize + 1; i++) 76
{ 77
HttpContext.Current.Response.Write(" <a href=?page=" + i + ">" + (i) + "</" + "a> "); 78
} 79
s = Input.Substring(Pagesize * PageIndex - Pagesize, Pagesize); 80
} 81
return s; 82
} 83
84
/// <summary> 85
/// 组合生成文件/栏目名称 86
/// </summary> 87
/// <param name="str">相关参数</param> 88
/// <returns>string</returns> 89
/// 添加时间2007-03-01 17:37:00 随机字的长度不能超过10 90
public static string FileRandName(string str) 91
{ 92
CommStr cs = new CommStr(); 93
string[] DirStr = { "{@year02}", "{@year04}", "{@month}", "{@day}", "{@hour}", "{@minute}", "{@second}" }; 94
for (int i = 0; DirStr.Length > i; i++) 95
{ 96
str = str.Replace(DirStr[i], "" + cs.Strch(i) + ""); 97
} 98
99
if (str.IndexOf("{@Ram") != -1) 100
{ 101
int Num = str.IndexOf("{@Ram"); 102
str = str.Replace(str.Substring(Num, 9), "" + cs.Strc(str.Substring(Num, 9)) + ""); 103
} 104
return str; 105
} 106
107
protected string Strch(int code) 108
{ 109
string str = ""; 110
switch (code) 111
{ 112
case 0: 113
str = DateTime.Now.ToString("yy"); 114
break; 115
case 1: 116
str = DateTime.Now.ToString("yyyy"); 117
break; 118
case 2: 119
str = DateTime.Now.ToString("MM"); 120
break; 121
case 3: 122
str = DateTime.Now.ToString("dd"); 123
break; 124
case 4: 125
str = DateTime.Now.ToString("HH"); 126
break; 127
case 5: 128
str = DateTime.Now.ToString("mm"); 129
break; 130
case 6: 131
str = DateTime.Now.ToString("ss"); 132
break; 133
} 134
return str; 135
} 136
137
protected string Strc(string StrChar) 138
{ 139
string str = StrChar.Substring(5,1); 140
int Str = int.Parse(StrChar.Substring(7,1)); 141
switch (Str) 142
{ 143
case 0: 144
str = NetCMS.Common.Rand.Number(int.Parse(str)); 145
break; 146
case 1: 147
str = "abcdefae"; 148
break; 149
case 2: 150
str = NetCMS.Common.Rand.Str(int.Parse(str)); 151
break; 152
} 153
return str; 154
} 155
156
157
} 158
} 159





}