/// <summary>
/// ASP.NET数据采集封装注意:记得添加引用 Interop.MSXML2.dll 否则msxml2命名空间用不了 COM组件Interop.MSXML2.dll则COM的引用列表中的Microsoft.xml v3.0
/// </summary>
public class Search
{
04
2013
05
C#中进行数据采集需要的方法类
02
2013
05
C#.ToString()格式字符串的各种格式转换
要转换字符数据为一些特殊格式,如下:
stringstr1=string.Format("{0:N1}",56789); //result: 56,789.0
stringstr2=string.Format("{0:N2}",56789); //result: 56,789.00
stringstr3=string.Format("{0:N3}",56789); //result: 56,789.000
stringstr8=string.Format("{0:F1}",56789); //result: 56789.0
stringstr9=string.Format("{0:F2}",56789); //result: 56789.00
stringstr11 =(56789 /100.0).ToString("#.##"); //result: 567.89
stringstr12 =(56789 / 100).ToString("#.##"); //result: 567
C 或 c货币
Console.Write("{0:C}", 2.5);//$2.50
Console.Write("{0:C}", -2.5);//($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);//25.00
Console.Write("{0:F0}", 25); //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); //FA
Console.Write("{0:X}", 0xffff);//FFFF
C 货币
2.5.ToString("C") ¥2.50
D 十进制数
25.ToString("D5") 00025
E科学型
25000.ToString("E") 2.500000E+005
F 固定点
25.ToString("F2") 25.00
G 常规
2.5.ToString("G") 2.5
N 数字
2500000.ToString("N") 2,500,000.00
X 十六进制
255.ToString("X") FF
formatCode是可选的格式化代码字符串。(详细内容请搜索“格式化字符串”查看)
必须用“{”和“}”将格式与其他字符分开。如果恰好在格式中也要使用大括号,可以用连续的两个大括号表示一个大括号,即:“{{”或者“}}”。
常用格式举例:
(1) int i=12345;
this.textBox1.Text=i.ToString();
//结果 12345(this指当前对象,或叫当前类的实例)
this.textBox2.Text=i.ToString("d8");
//结果 00012345
(2) int i=123;
double j=123.45;
string s1=string.Format("the value is{0,7:d}",i);
string s2=string.Format("the value is{0,7:f3}",j);
this.textBox1.Text=s1 ;
//结果 the value is 123
this.textBox2.Text=s2;
//结果 the value is123.450
(3)double i=12345.6789;
this.textBox1.Text=i.ToString("f2");//结果 12345.68
this.textBox2.Text=i.ToString("f6");
//结果 12345.678900
(4)double i=12345.6789;
this.textBox1.Text=i.ToString("n");//结果 12,345.68
this.textBox2.Text=i.ToString(“n4”); //结果12,345.6789
(5)double i=0.126;
string s=string.Format("the value is{0:p}",i);
this.textBox1.Text=i.ToString("p");//结果 12.6%
this.textBox2.Text=s; //结果 the valueis 12.6%
(6) DateTime dt =new DateTime(2003,5,25);
this.textBox1.Text=dt.ToString("yy.M.d");
//结果 03.5.25
this.textBox2.Text=dt.ToString(“yyyy年M月”);
//结果 2003年5月
Convert.ToDateTime("2005/12/2222:22:22").ToString("yyyy/MM/dd HH:mm:ss")
"2005/12/22 22:22:22"
(7) int i=123;
double j=123.45;
strings=string.Format("i:{0,-7},j:{1,7}",i,j);
//-7表示左对齐,占7位
this.textBox1.Text=s ;
//结果i:123 ,j: 123.45
补充:
1、C#中用最简单的方法把数字(不含小数)转换为千分位格式:
如1234567变成1,234,567
方法:1234567.ToString("###,###") 或 1234567.ToString("N0")
2、C#中把数字转换成带两位小数的千分位字符:
如1234567.891变成1,234,567.89
方法:String.Format("{0:N}",1234567.891); //默认为两位小数,如果没有小数位,则小数位补两个0
或:String.Format("{0:N2}",1234567.891);
11
2013
04
C# 读取网页所有源代码,存成字符串
//第一个为读取网页或某个网页文件
public static string WriteFile(string FilePath)
{
Encoding code = Encoding.GetEncoding("gb2312");
//读取html和其他文件
string temp = HttpContext.Current.Server.MapPath(FilePath);
StreamReader sr = null;
StreamWriter sw = null;
string str = "";
try
{
sr = new StreamReader(temp, code);
str = sr.ReadToEnd(); // 读取文件
}
catch (Exception exp)
{
sr.Close();
}
return str;
}
30
2013
03
C# 判断远程图片和文件是否存在
/// <summary>
/// 判断远程图片是否存在
/// </summary>
/// <param name="curl">远程图片地址</param>
/// <returns></returns>
private int GetUrlError(string curl)
{
int num = 200;
if (this.method == 1)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(curl));
ServicePointManager.Expect100Continue = false;
try
{
((HttpWebResponse)request.GetResponse()).Close();
}
20
2013
03
C#中年月填充到ComboBox中的方法
/// <summary>
/// 年月填充到ComboBox中的方法
/// </summary>
private void FillYearMonth()
{
int minYear = 2012; //最小年份
int maxYear = DateTime.Now.Year; //当前年份
21
2012
09
C# 计算两个日期的时间间隔
/// <summary>
/// 计算两个日期的时间间隔
/// </summary>
/// <param name="DateTime1">第一个日期和时间</param>
/// <param name="DateTime2">第二个日期和时间</param>
...
07
2012
09
C#学习基础数组和元组
单维数组
当需要操作一系列类型相同的对象的时候,可以使用数组。数组就是一组包含相同类型元素的数据结构。数组的简单声明如下
int[] myArray; 在数组声明以后,内存要分配出来能够存储所有元素的空间。数组是引用类型,因此堆上必须分配出来相应的空间。可以通过初始化数组变量的类型和数组元素的数量来初始化内存分配,如
myArray=new int[4]
数组在初始化大小之后就不能再改变,如果需要可变大小的数组,那么推荐使用集合。还可以直接在声明变量的时候直接声明数组的内容,这个时候内存可以直接分配数组的空间,直接声明可以有如下几种方法:
...18
2012
08
C#中Collection和Dictionary的foreach遍历方式
对于.net Framework中内置的几种集合类,foreach是一种很方便的遍历方式:
非泛型&弱类型的Collections(ArrayList,Queue,Stack):
使用object:
17
2012
08
C# - 让窗口随图片自动改变大小
16
2012
08
C# 获得一个月中的天数
public
DateTime GetLastDayOfMonth(
int
Year,
int
Month)
11
2012
08
C#实体类模板
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Data.SqlClient; namespace SNS_Entitys { public class SNS
05
2012
08
C#常用String.Format
今天在博客园上看到一片超赞的C#字符串格式的文章,是我看过最好的一个关于字符格式的文章,转来收藏,顺便向原作者flyingbread表示感谢和尊敬!
1 前言
如果你熟悉Microsoft Foundation Classes(MFC)的CString,Windows Template Library(WTL)的CString或者Standard Template Library(STL)的字符串类,那么你对String.Format方法肯定很熟悉。在C#中也经常使用这个方法来格式化字符串,比如下面这样:
...30
2012
07
Asp.Net中的Js调用后台C#方法
对于开发前端的人员来说,为了一些特效,不让页面回发,可以需要异步去调用我们后台的方法,由于这个问题比较老了,牛人可以到别处看看了,哈哈。
目前的技术也是比较多,实现方式也各个相同,只要按照每个技术规则就很好的实现了。废话不说,本节内容如下:
(1)利用一般处理文件来实现调用后台方法
(2)利用Jquery调用后台方法
(3)利用微软自带的PageMethods
(4)利用AjaxPro实现调用后台方法
开始了。。。。,本节只讲怎么实现,至于理念和深入的资料不会在本节中细讲
...27
2012
07
C#对XML数据的相关操作
部分项目采用的是用xml文件来存储数据的,下面提供一个针对xml相关操作的类XMLHelper。
public class XMLHelper
{
//定义XML文件的路径
protected string strXmlFile;
//定义xml文档;
protected XmlDocument objXmlDoc = new XmlDocument();
25
2012
07
C# 复制文件夹,移动文件夹
...
23
2012
07
使用C#制作网络蜘蛛爬虫,随时在检查站点可访问性
前几天自己负责的网站出现了不能访问的问题,系统监控程序通过告警将这一信息告诉了管理员。管理员找到了我,告诉我站点不能正常访问。后来问题查明,是负载均衡器出了问题。自己在检查站点的时候,发现有些图片不能正确显示,原因是图片链接无效。
后来我就在总结这次故障,监控程序只能检测几个配置的链接,不可能对整个站点所有链接进行检测,不然配置文件要写一大堆。如果是配置外的链接不能访问,那不是就没有办法告知管理员了吗,况且现在的监控程序也不能检查页面图片能否正常显示。如果每次都要人工去检查,那是相当不现实的,那我能不能写个小程序去实现自动检查,并把检查结果已邮件的形式发送给相关人员呢?于是我想到了,可以使用网络爬虫干这件事情,当然这个爬虫是定制版的,只爬当前站点。
...
16
2012
07
12
2012
07
C# 实用函数大全,最全最实用的C#函数方法
using System;
using System.Collections.Generic;
using System.Text;
...
30
2012
06
用C#实现Windows Mobile 发送短信
Windows Mobile发送短信应用分为两种,一是调用Windows Mobile自有的发送短信窗口,将接收用户的手机号码传递给该窗口,完成短信发送(暂且称为窗口短信),另一种是通过调用API将文本发送给指定的号码,这中发送方式对于用户是无感知的(暂且称为无感知短信,下面对这两种方式的实现分别介绍。&G6~-v9c1R*O
窗口短信:
窗口短信实现比较简单,可以直接使用下面的启动参数启动系统的EXE文件即可, System.Diagnostics.Process.Start("tmail.exe", "-transport \"SMS\" -to \"" + 手机号码 + "\" -body \"短信内容\"");但要注意的是,在发送完毕后,短信列表页面会在你关闭发送信息窗口后呈现出来,可以在页面的关闭事件中,使用FindWind方法,找到系统的【短信】窗口,将其关闭即可。
...
05
2012
06
C# 检查邮件地址是否正确,是否符合邮件地址格式要求
/// <summary>
/// 检查邮件地址是否正确
/// </summary>
/// <param name="strEmail"></param>
...