分享

asp.net(c#)数据类型格式转换大全

 悟静 2011-05-07
1、DateTime   数字型
       System.DateTime currentTime=new System.DateTime();
1.1 取当前年月日时分秒
       currentTime=System.DateTime.Now;
1.2 取当前年
       int 年=currentTime.Year;
1.3 取当前月
       int 月=currentTime.Month;
1.4 取当前日
       int 日=currentTime.Day;
1.5 取当前时
       int 时=currentTime.Hour;
1.6 取当前分
       int 分=currentTime.Minute;
1.7 取当前秒
       int 秒=currentTime.Second;
1.8 取当前毫秒
    int 毫秒=currentTime.Millisecond;
    (变量可用中文)

2、Int32.Parse(变量)            Int32.Parse("常量")
   字符型转换 转为32位数字型

3、 变量.ToString()      
   字符型转换 转为字符串
   12345.ToString("n");        //生成   12,345.00
   12345.ToString("C");        //生成 ¥12,345.00
   12345.ToString("e");        //生成 1.234500e+004
   12345.ToString("f4");        //生成 12345.0000
   12345.ToString("x");         //生成 3039 (16进制)
   12345.ToString("p");         //生成 1,234,500.00%


4、变量.Length 数字型
   取字串长度:
      如: string str="中国";
           int Len = str.Length ;    //Len是自定义变量, str是求测的字串的变量名

5、System.Text.Encoding.Default.GetBytes(变量)
   字码转换 转为比特码
      如:byte[] bytStr = System.Text.Encoding.Default.GetBytes(str);
   然后可得到比特长度:
      len = bytStr.Length;

6、System.Text.StringBuilder("")
    字符串相加,(+号是不是也一样?)
    如:System.Text.StringBuilder sb = new System.Text.StringBuilder("");
       sb.Append("中华");
       sb.Append("人民");
       sb.Append("共和国");

7、变量.Substring(参数1,参数2);
    截取字串的一部分,参数1为左起始位数,参数2为截取几位。
    如:string s1 = str.Substring(0,2);

8、String user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();
    取远程用户IP地址

9、穿过代理服务器取远程用户真实IP地址:
   if(Request.ServerVariables["HTTP_VIA"]!=null){
      string user_IP=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
     }else{
      string user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();
    }
     
10、 Session["变量"];   
      存取Session值;
      如,赋值: Session["username"]="小布什";

          取值: Object objName=Session["username"];
                  String strName=objName.ToString();
          清空: Session.RemoveAll();

11、String str=Request.QueryString["变量"];
      用超链接传送变量。
       如在任一页中建超链接:<a href=Edit.aspx?fbid=23>点击</a>
       在Edit.aspx页中取值:String str=Request.QueryString["fdid"];

12、DOC对象.CreateElement("新建节点名");
      创建XML文档新节点

13、父节点.AppendChild(子节点);
      将新建的子节点加到XML文档父节点下

14、 父节点.RemoveChild(节点);
       删除节点

15、Response
    Response.Write("字串");
    Response.Write(变量);

       向页面输出。

    Response.Redirect("URL地址");
       跳转到URL指定的页面

16、char.IsWhiteSpce(字串变量,位数)——逻辑型
    查指定位置是否空字符;
    如:
    string str="中国 人民";
    Response.Write(char.IsWhiteSpace(str,2)); //结果为:True, 第一个字符是0位,2是第三个字符。

17、char.IsPunctuation('字符') --逻辑型
    查字符是否是标点符号
   如:Response.Write(char.IsPunctuation('A'));   //返回:False

18、(int)'字符'
    把字符转为数字,查代码点,注意是单引号。
    如:
    Response.Write((int)'中');   //结果为中字的代码:20013

19、(char)代码
    把数字转为字符,查代码代表的字符。
   如:
   Response.Write((char)22269);   //返回“国”字。
    
20、 Trim()
     清除字串前后空格

21 、字串变量.Replace("子字串","替换为")
     字串替换
     如:
     string str="中国";
     str=str.Replace("国","央"); //将国字换为央字
     Response.Write(str);     //输出结果为“中央”

     再如:(这个非常实用)

       string str="这是<script>脚本";
       str=str.Replace("<","<font><</font>"); //将左尖括号替换为<font> 与 < 与 </font> (或换为&lt,但估计经XML存诸后,再提出仍会还原)
       Response.Write(str); //显示为:“这是<script>脚本”

      如果不替换,<script>将不显示,如果是一段脚本,将运行;而替换后,脚本将不运行。
      这段代码的价值在于:你可以让一个文本中的所有HTML标签失效,全部显示出来,保护你的具有交互性的站点。
     具体实现:将你的表单提交按钮脚本加上下面代码:
     string strSubmit=label1.Text;   //label1是你让用户提交数据的控件ID。
     strSubmit=strSubmit.Replace("<","<font><</font>");  
     然后保存或输出strSubmit。
     用此方法还可以简单实现UBB代码。

22、Math.Max(i,j)
    取i与j中的最大值
    如 int x=Math.Max(5,10); // x将取值 10

-------------------------------------------------------------

asp.net/c#字符格式化大总结
一、用{0:?}格式化

可通过 String.Format 方法或通过 Console.Write 方法格式化数值结果,其中后一种方法调用 String.Format。使用格式字符串指定格式。下表包含受支持的标准格式字符串。格式字符串采用的形式为 Axx,其中 A 为“格式说明符”,而 xx 为“精度说明符”。格式说明符控制应用于数值的格式化类型,而精度说明符控制格式化输出的有效位数或小数位数。

有关标准及自定义格式化字符串的更多信息,请参阅格式化概述。有关 String.Format 方法的更多信息,请参阅 String.Format 方法。

字符 说明 示例 输出
C 或 c 货币 Console.Write("{0:C}", 2.5);
Console.Write("{0:C}", -2.5);
$2.50
($2.50)

D 或 d 十进制 Console.Write("{0:D5}", 25); 00025
E 或 e 科学型 Console.Write("{0:E}", 250000); 2.500000E+005
F 或 f 固定点 Console.Write("{0:F2}", 25);
Console.Write("{0:F0}", 25);
25.00
25

G 或 g 常规 Console.Write("{0:G}", 2.5); 2.5
N 或 n 数字 Console.Write("{0:N}", 2500000); 2,500,000.00
X 或 x 十六进制 Console.Write("{0:X}", 250);
Console.Write("{0:X}", 0xffff);
FA
FFFF

二、日期格式化

标准 DateTime 格式字符串
如果格式字符串只包含下表列出的某个单个格式说明符,则它们被解释为标准格式说明符。如果指定的格式字符是单个字符并且不包含在下表中,则引发异常。如果格式字符串在长度上比单个字符长(即使多余的字符是空白),则格式字符串被解释为自定义格式字符串。请注意,这些格式说明符产生的模式受“区域选项”控制面板中的设置的影响。具有不同区域性或不同日期与时间设置的计算机将显示不同的模式。

格式字符串显示的时间和日期分隔符由与当前区域性的 DateTimeFormat 属性关联的 DateSeparator 和 TimeSeparator 字符定义。然而,如果 InvariantCulture 被“r”、“s”和“u”说明符引用,与 DateSeparator 和 TimeSeparator 字符关联的字符不随当前区域性更改。下表描述了格式化 DateTime 对象的标准格式字符串。

格式说明符 名称 说明
d 短日期模式 显示由与当前线程关联的 DateTimeFormatInfo.ShortDatePattern 属性定义的模式或者由指定格式提供程序定义的模式。
D 长日期模式 显示由与当前线程关联的 DateTimeFormatInfo.LongDatePattern 属性定义的模式或者由指定格式提供程序定义的模式。
t 短时间模式 显示由与当前线程关联的 DateTimeFormatInfo.ShortTimePattern 属性定义的模式或者由指定格式提供程序定义的模式。
T 长时间模式 显示由与当前线程关联的 DateTimeFormatInfo.LongTimePattern 属性定义的模式或者由指定格式提供程序定义的模式。
f 完整日期/时间模式(短时间) 显示长日期和短时间模式的组合,由空格分隔。
F 完整日期/时间模式(长时间) 显示由与当前线程关联的 DateTimeFormatInfo.FullDateTimePattern 属性定义的模式或者由指定格式提供程序定义的模式。
g 常规日期/时间模式(短时间) 显示短日期和短时间模式的组合,由空格分隔。
G 常规日期/时间模式(长时间) 显示短日期和长时间模式的组合,由空格分隔。
M 或 m 月日模式 显示由与当前线程关联的 DateTimeFormatInfo.MonthDayPattern 属性定义的模式或者由指定格式提供程序定义的模式。
R 或 r RFC1123 模式 显示由与当前线程关联的 DateTimeFormatInfo.RFC1123Pattern 属性定义的模式或者由指定格式提供程序定义的模式。这是定义的标准,并且属性是只读的;因此,无论所使用的区域性或所提供的格式提供程序是什么,它总是相同的。属性引用 CultureInfo.InvariantCulture 属性并遵照自定义模式“ddd, dd MMMM yyyy HH:mm:ss G\MT”。请注意,“GMT”中的“M”需要转义符,因此它不被解释。
s 可排序的日期/时间模式;符合 ISO 8601 显示由与当前线程关联的 DateTimeFormatInfo.SortableDateTimePattern 属性定义的模式或者由指定格式提供程序定义的模式。属性引用 CultureInfo.InvariantCulture 属性,格式遵照自定义模式“yyyy-MM-ddTHH:mm:ss”。
u 通用的可排序日期/时间模式 显示由与当前线程关联的 DateTimeFormatInfo.UniversalSortableDateTimePattern 属性定义的模式或者由指定格式提供程序定义的模式。因为它是定义的标准,并且属性是只读的,因此无论区域性或格式提供程序是什么,模式总是相同的。格式遵照自定义模式“yyyy-MM-dd HH:mm:ssZ”。
U 通用的可排序日期/时间模式 显示由与当前线程关联的 DateTimeFormatInfo.FullDateTimePattern 属性定义的模式或者由指定格式提供程序定义的模式。请注意,显示的时间是通用时间,而不是本地时间。
Y 或 y 年月模式 显示由与当前线程关联的 DateTimeFormatInfo.YearMonthPattern 属性定义的模式或者由指定格式提供程序定义的模式。
任何其他单个字符 未知说明符  

下表显示了格式说明符示例的列表,这些示例应用于公开当前日期和时间信息的 DateTime.Now 的任意值。示例中给出了不同的区域性设置以阐释更改当前区域性的影响。这通常以下面几种方式更改:使用 Microsoft Windows 中的“日期/时间”控制面板,将您自己的 DateTimeFormatInfo 对象作为格式提供程序传递,或将 CultureInfo 对象设置传递给不同的区域性。请注意,对于“r”和“s”格式,更改区域性不影响输出。此表是说明标准日期和时间说明符如何影响格式化的快速指南。请参阅该表下面阐释这些说明符的代码示例部分。

格式说明符 当前区域性 输出
d en-US 4/10/2001
d en-NZ 10/04/2001
d de-DE 10.04.2001
D en-US Tuesday, April 10, 2001
T en-US 3:51:24 PM
T es-ES 15:51:24
f en-US Tuesday, April 10, 2001 3:51 PM
f fr-FR mardi 10 avril 2001 15:51
r en-US Tue, 10 Apr 2001 15:51:24 GMT
r zh-SG Tue, 10 Apr 2001 15:51:24 GMT
s en-US 2001-04-10T15:51:24
s pt-BR 2001-04-10T15:51:24
u en-US 2001-04-10 15:51:24Z
u sv-FI 2001-04-10 15:51:24Z
m en-US April 10
m ms-MY 10 April
y en-US April, 2001
y af-ZA April 2001
L en-UZ 无法识别的格式说明符;引发格式异常。

下面的代码示例阐释如何使用对 DateTime 对象使用自定义格式字符串。

[Visual Basic]Dim dt As DateTime = DateTime.NowDim dfi As DateTimeFormatInfo = New DateTimeFormatInfo()Dim ci As CultureInfo = New CultureInfo("de-DE")' Make up a new custom DateTime pattern, for demonstration.dfi.MonthDayPattern = "MM-MMMM, ddd-dddd"' Use the DateTimeFormat from the culture associated ' with the current thread.Console.WriteLine( dt.ToString("d") ) Console.WriteLine( dt.ToString("m") )' Use the DateTimeFormat from the specific culture passed.Console.WriteLine( dt.ToString("d", ci ) )' Use the

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多