从Internet上抓取指定URL的源码的方案(C#)
[ 2006-04-26 23:01:26 | 作者: admin ]
作者:3cts | 来源:doc.4kiki.net
引言:
在做无线项目的时候,与通讯公司的数据通讯有一部分是通过XML交互的,所以必须要动态抓取通讯公司提供的固定的Internet上的数据,便研究了一下如何抓取固定url上的数据,现与大家分享一下。
类名GetPageCode,有一个方法GetSource,通过属性传递参数,入参控制的是要取得URL的地址,代理服务器的设置及输出方式的控制,这里大家可以再扩展自己的需要,我这里只提供了两种方式,一种是直接写到本地的某个文件中,另外一种就是返回字符串的。类里已经作了比较详细的注释,我想大家很容易就看明白了,如果实在不明白,那就msn上问吧,MSN:yubo@x263.net。
调用方式:
#region 测试获取远程网页
GetPageCode gpc = new GetPageCode();
...
阅读全文…
引言:
在做无线项目的时候,与通讯公司的数据通讯有一部分是通过XML交互的,所以必须要动态抓取通讯公司提供的固定的Internet上的数据,便研究了一下如何抓取固定url上的数据,现与大家分享一下。
类名GetPageCode,有一个方法GetSource,通过属性传递参数,入参控制的是要取得URL的地址,代理服务器的设置及输出方式的控制,这里大家可以再扩展自己的需要,我这里只提供了两种方式,一种是直接写到本地的某个文件中,另外一种就是返回字符串的。类里已经作了比较详细的注释,我想大家很容易就看明白了,如果实在不明白,那就msn上问吧,MSN:yubo@x263.net。
调用方式:
#region 测试获取远程网页
GetPageCode gpc = new GetPageCode();
...
阅读全文…
Asp.net(C#)给图片加上水印效果
[ 2006-04-23 17:05:24 | 作者: admin ]
下面的代码中,加文字水印和加图片水印的代码不能共存
我是为了方便显示才写在一块的
private void Btn_Upload_Click(object sender, System.EventArgs e)
{
if(UploadFile.PostedFile.FileName.Trim()!="")
{
//上传文件
string extension = Path.GetExtension(UploadFile.PostedFile.FileName).ToUpper();
string fileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() ...
阅读全文…
我是为了方便显示才写在一块的
private void Btn_Upload_Click(object sender, System.EventArgs e)
{
if(UploadFile.PostedFile.FileName.Trim()!="")
{
//上传文件
string extension = Path.GetExtension(UploadFile.PostedFile.FileName).ToUpper();
string fileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() ...
阅读全文…
c#时间和日期格式化
[ 2006-04-23 16:57:54 | 作者: admin ]
p.s. 简单的直接对时间定义输出格式:DateTime.Now.ToString("yyyyMMddhhmmss");
C#日期格式化
日期转化一
为了达到不同的显示效果有时,我们需要对时间进行转化,默认格式为:2007-01-03 14:33:34 ,要转化为其他格式,要用到DateTime.ToString的方法(String, IFormatProvider),如下所示:
using System;
using System.Globalization;
String format="D";
DateTime date=DataTime,Now;
Response.Write(date.ToString(format, DateTimeFormatInfo.InvariantInfo));
结果输出
Thursday, June 16, 2005
...
阅读全文…
C#日期格式化
日期转化一
为了达到不同的显示效果有时,我们需要对时间进行转化,默认格式为:2007-01-03 14:33:34 ,要转化为其他格式,要用到DateTime.ToString的方法(String, IFormatProvider),如下所示:
using System;
using System.Globalization;
String format="D";
DateTime date=DataTime,Now;
Response.Write(date.ToString(format, DateTimeFormatInfo.InvariantInfo));
结果输出
Thursday, June 16, 2005
...
阅读全文…
在声明一个数组的时候,方括号必须跟在类型后面,而不能跟在变量名后面,如:
int[] table; //不能写成int table[]
这一点显然与JAVA是不同的,在JAVA中这样是可以的.
还有就是在C#中你可以不指定数组的大小,这与C语言是不一样的.这使得你可以指定任意长度的数组,如下:
int[] numbers; // 它的长度是任意的
当然,你也可以指定它的大小:
int[10] numbers;//指定了一个长度为10的数组.
在C#中,支持的数组包括:单维数组,多维数组和多重数组.它们的声明方法如下:
单维数组:
int[] numbers;
多维数组:
string[,] names;
多重数组:
byte[][] scores;
声明一个数组并不代表已经建立了它.在C#中,所有的数组元素都是对象(倒!怎么跟JAVA说得一样&*%$#@),所以在建立它之前,首先要将它实例化:
...
阅读全文…
int[] table; //不能写成int table[]
这一点显然与JAVA是不同的,在JAVA中这样是可以的.
还有就是在C#中你可以不指定数组的大小,这与C语言是不一样的.这使得你可以指定任意长度的数组,如下:
int[] numbers; // 它的长度是任意的
当然,你也可以指定它的大小:
int[10] numbers;//指定了一个长度为10的数组.
在C#中,支持的数组包括:单维数组,多维数组和多重数组.它们的声明方法如下:
单维数组:
int[] numbers;
多维数组:
string[,] names;
多重数组:
byte[][] scores;
声明一个数组并不代表已经建立了它.在C#中,所有的数组元素都是对象(倒!怎么跟JAVA说得一样&*%$#@),所以在建立它之前,首先要将它实例化:
...
阅读全文…
在C#中应用哈希表(Hashtable) ,主要是键值对/名值对。
[ 2006-04-19 16:31:51 | 作者: admin ]
一,哈希表(Hashtable)简述
在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的key/value键值对.
二,哈希表的简单操作
在哈希表中添加一个key/value键值对:HashtableObject.Add(key,value);
在哈希表中去除某个key/value键值对:HashtableObject.Remove(key);
从哈希表中移除所有元素: HashtableObject.Clear();
判断哈希表是否包含特定键key: ...
阅读全文…
在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的key/value键值对.
二,哈希表的简单操作
在哈希表中添加一个key/value键值对:HashtableObject.Add(key,value);
在哈希表中去除某个key/value键值对:HashtableObject.Remove(key);
从哈希表中移除所有元素: HashtableObject.Clear();
判断哈希表是否包含特定键key: ...
阅读全文…
C#中保留几位小数的问题
[ 2006-04-19 13:15:09 | 作者: admin ]
方法一、
double d=123.1256521;
string output=d.ToString("f3");
方法二、
new DecimalFormat("0.00").format(*******);
方法三、
运行结果:
Math.Round(3.44, 1) = 3.4
Math.Round(3.45, 1) = 3.4
Math.Round(3.46, 1) = 3.5
-----------------------------------------------
Math.Round(3.54, 1) = 3.5
Math.Round(3.55, 1) = 3.6
Math.Round(3.56, 1) = 3.6
-----------------------------------------------
...
阅读全文…
double d=123.1256521;
string output=d.ToString("f3");
方法二、
new DecimalFormat("0.00").format(*******);
方法三、
运行结果:
Math.Round(3.44, 1) = 3.4
Math.Round(3.45, 1) = 3.4
Math.Round(3.46, 1) = 3.5
-----------------------------------------------
Math.Round(3.54, 1) = 3.5
Math.Round(3.55, 1) = 3.6
Math.Round(3.56, 1) = 3.6
-----------------------------------------------
...
阅读全文…
C#中怎样把诸如"6+9-9*8"的字符串转换成数学表达式?
[ 2006-04-19 12:39:51 | 作者: admin ]
//在引用中添加COM中的MicroSoft Script Control 1.0
//using MSScriptControl;
private void Form1_Load(object sender, System.EventArgs e)
{
MSScriptControl.ScriptControl sc=new MSScriptControl.ScriptControlClass();
sc.Language="JavaScript";
MessageBox.Show(sc.Eval("6+9-9*8").ToString());
}
请参考以下内容:
动态地生成用户输入的函数表达式(C#):
http://skyivben.cnblogs.com/archive/2005/10/31/265861.html
怎样将"20*10+5*20"这样的字符串表达式"计算"后返回结果300:
...
阅读全文…
//using MSScriptControl;
private void Form1_Load(object sender, System.EventArgs e)
{
MSScriptControl.ScriptControl sc=new MSScriptControl.ScriptControlClass();
sc.Language="JavaScript";
MessageBox.Show(sc.Eval("6+9-9*8").ToString());
}
请参考以下内容:
动态地生成用户输入的函数表达式(C#):
http://skyivben.cnblogs.com/archive/2005/10/31/265861.html
怎样将"20*10+5*20"这样的字符串表达式"计算"后返回结果300:
...
阅读全文…
想到一个关于组件的命名
[ 2006-04-14 02:44:32 | 作者: admin ]
因为老是是和界面表现层部分的类冲突,所以可以仿照vc的MFC,在其他层的类名前加个 C。